使用jquery-1.4.1.js拒绝访问

时间:2010-11-10 16:29:54

标签: jquery wcf

我正在使用VS2010和jquery-1.4.1.js版本,我尝试访问WCF服务,我在 jquery-1.4中收到一个奇怪的错误“访问被拒绝”。 1.js ,页码 4982

的jquery-1.4.1.js:

    // Open the socket
    // Passing null username, generates a login popup on Opera (#2865)
    if ( s.username ) {
        xhr.open(type, s.url, s.async, s.username, s.password);
    } else {
        xhr.open(type, s.url, s.async);
    }

以下是我的致辞

 function PostData() {           

        var webMethod = 'http://myservices/SomeService.svc/GetCount'
        var parameters = "{'Id': '" + "1" + "'}"
        $.ajax({
            type: "POST",
            url: webMethod,
            data: parameters,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                //$(divToBeWorkedOn).html(msg.d);
                debugger
            },
            error: function (e) {
                //$(divToBeWorkedOn).html("Unavailable");
            }
        });
    } 

可能是什么问题?我测试我的wcf服务,它工作正常,我尝试通过asp.net连接并添加Web引用,只是为了看看是否有任何问题。

1 个答案:

答案 0 :(得分:1)

此行是不必要的:

contentType: 'application/json; charset=utf-8', 

它告诉服务器您发送的是哪种数据,而不是您希望收到的数据,并且您实际上并没有发送任何数据。


修改

您似乎在另一个域上调用脚本。这违反了same origin policy:您只能对同一域中的项目发出AJAX请求。有一种使用称为JSONP的方法,需要服务器端支持。请参阅$.ajax的文档,尤其是JSONP dataType section