尝试使用JQuery Ajax()发送JSON时出现解析错误

尝试使用JQuery Ajax()发送JSON时出现解析错误,jquery,ajax,Jquery,Ajax,我正在尝试将以下json发送到web方法。Firebug报告以下错误: XML分析错误:未找到元素位置:moz nullprincipal:{d9dc6bef-4ec9-4899-b8df-7319db0e47cf}行号1,第1列: 我正在编辑请求标题以包含内容类型。有人能帮我吗 var request = {"uid":"Test","application":",myApplication","localization":"en-us","id":"aae49326","context"

我正在尝试将以下json发送到web方法。Firebug报告以下错误:

XML分析错误:未找到元素位置:moz nullprincipal:{d9dc6bef-4ec9-4899-b8df-7319db0e47cf}行号1,第1列:

我正在编辑请求标题以包含内容类型。有人能帮我吗

  var request = {"uid":"Test","application":",myApplication","localization":"en-us","id":"aae49326","context":"","clientToken":"puttokenhere2","version":"2.0.87","timestamp":"4/6/2011 13:15:57","status":"COMPLETED","data":""};
        jQuery.ajax({ beforeSend: function(xhrObj) {
            xhrObj.setRequestHeader("Method", "POST");
            xhrObj.setRequestHeader("Content-Type", "application/json; charset=\"utf-8\";");
        },            
            async: false,
            type: "POST",
            contentType: "application/json; charset=\"utf-8\";",
            dataType: "json",
            url: MILESTONEURL,
            data: request,
            complete: function(response, status) {
                if ("success" == status) {
                    alert("SUCCESS:\n" + response.responseText);
                }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                var response = eval("(" + XMLHttpRequest.responseText + ')'); ;
                alert("FAILED:\n" + XMLHttpRequest.responseText);
            }
        });
 }

问题出在Web服务上-关闭第1行的键不应该有双引号

试试这个:

   var request = {uid:"Test",application:",myApplication",localization:"en-us",id:"aae49326",context:"",clientToken:"puttokenhere2",version:"2.0.87",timestamp:"4/6/2011 13:15:57",status:"COMPLETED",data:""};
    jQuery.ajax({ beforeSend: function(xhrObj) {
        xhrObj.setRequestHeader("Method", "POST");
        xhrObj.setRequestHeader("Content-Type", "application/json; charset=\"utf-8\";");
    },            
        async: false,
        type: "POST",
        contentType: "application/json; charset=\"utf-8\";",
        dataType: "json",
        url: MILESTONEURL,
        data: request,
        complete: function(response, status) {
            if ("success" == status) {
                alert("SUCCESS:\n" + response.responseText);
            }
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
            var response = eval("(" + XMLHttpRequest.responseText + ')'); ;
            alert("FAILED:\n" + XMLHttpRequest.responseText);
        }
    });
 }

JS对象键周围的引号是完全有效的。这也是JSON编码它们的方式。