无效的JSON原语:object:将对象作为参数从aspx传递

时间:2011-12-16 20:30:14

标签: c# asp.net json

使用以下脚本从C#中的webservice接收JSON对象

    $.ajax({
            type: "POST",
            url: "Services/LogService.asmx/authenticateLogin",
            data: "{'gopId':'" + txtGopId+ "'}",
            contentType: "application/json; charset=utf-8",
            success: function (response) 
            {
                var k = $("#hidId").val(response.d);                   
                window.location.replace("Pages/Reved.aspx?hid="+k+"");                           
            },
            error: function (xhr, status, error) {

                DisplayError(xhr);
            }
        }); 

hidId是一个隐藏的领域。

on sucess am将Object转发到另一个aspx页面并尝试在page_load上反序列化

         JavaScriptSerializer serializer = new JavaScriptSerializer();
         userBO = serializer.Deserialize<UserBO>(Request["hid"]);

我做错了吗?因为iam面临这个错误: 无效的JSON原语:object

1 个答案:

答案 0 :(得分:3)

“无效的JSON原语”错误消息表示您发送给反序列化程序的任何内容都不是JSON。您是否已验证您在hidId字段中输入的值是否为有效的JSON?