无法从asp.net处理程序中的AJAX调用中获取正确的发布数据

时间:2012-12-14 10:18:55

标签: asp.net jquery httphandler

我通过AJAX调用调用处理程序。 的

var PostData = {"MyName": myName };
$_.ajax(
        {
            type: "POST",
            async: true,                                
            url: 'SomeGenericHandler.ashx',                                
            data: JSON.stringify(PostData),
            success: function (msg)
            {
                var ObjJson = eval(msg);        
            },
            error: function (msg)
            {   
            }
        });

在ProcessRequest内部,我得到了这些值:

context.Request.Form.Count = 1 
context.Request.Form[0] = "{'MyName':'dave'}"
context.Request.Form["MyName"] = null 

如何将发布的数据作为: context.Request.Form [“MyName”] =“dave”

提前致谢:)

1 个答案:

答案 0 :(得分:0)

您需要以帖子的格式发送数据:

$_.ajax(
        {
            type: "POST",
            async: true,                                
            url: 'SomeGenericHandler.ashx',                                
            data: 'MyName=dave&MoreData=SecondName',
            success: function (msg)
            {
                var ObjJson = eval(msg);        
            },
            error: function (msg)
            {   
            }
        });

另请查看encodeURIComponent,您可能需要对参数进行编码:

Combining two Javascript and jQuery scripts