如何将数据发布到ASP.NET HttpHandler?

Ali*_*zmi 13 asp.net ajax httphandler

我正在尝试将大量数据发送到HTTP处理程序.由于URL长度限制,我无法使用GET发送它,因此我决定将其POST.问题是我无法达到价值观.context.Request.Form显示它有0个项目.那么有没有办法将数据发布到HttpHandler?

Dan*_*ert 11

有一些代码可以帮助诊断问题.你尝试过这样的事吗?

jQuery代码:

$.post('test.ashx', 
       {key1: 'value1', key2: 'value2'}, 
       function(){alert('Complete!');});
Run Code Online (Sandbox Code Playgroud)

然后在您的ProcessRequest()方法中,您应该能够:

string key1 = context.Request.Form["key1"]; 
Run Code Online (Sandbox Code Playgroud)

您还可以在ProcessRequest()方法中检查请求类型以调试问题.

if(context.Request.RequestType == "POST")
{
    // Request should have been sent successfully
}
else
{
    // Request was sent incorrectly somehow
}
Run Code Online (Sandbox Code Playgroud)


Kir*_*tan 1

发送到 HTTP 处理程序的 POST 数据必须采用查询字符串格式a=b&c=dRequest["a"]您可以使用(will return )在服务器端检索它b,依此类推。