我有一个HTML页面下面的AJAX方法:jQuery的AJAX方法调用Web服务接收403禁止
$(document).ready(function() {
$.ajax({
type: "POST",
url: "http://www.webservice.com/blahblah.asmx/blahb123",
data: "tnWsGuid=TEST1",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function(msg)
{
alert("sucess")
},
error: function(e)
{
alert(JSON.stringify(e));
}
});
});
回归的我403禁止。一位同事建立了Web服务,我无法访问代码,也没有当前能力在他休假时改变它。我需要显示这些数据 - 在这一点上,我尝试的一切都失败了,并给我一个403禁止的错误。为了显示代码,我已将url名称和成功功能更改为警报对话框。其他
的一件事是,JSON是包裹在XML看来,从ASP.NET web服务,看起来像这样来:
<string xmlns="http://Walkthrough/XmlWebServices/">
{"approverName":"","emailAddress":"","companyName":"ABC","address":{"streetAddress1":"12 BlahBlah","streetAddress2":"","state":"ON","zipCode":"","country":"SO","phoneNumber":""},"tabledata:"[{"vendorPart":"AAAAA","partDescription":"N/A","price":"0.00","quantity":"28"},{"vendorPart":"BBBBBBB","partDescription":"N/A","price":"0.00","quantity":"3"},{"vendorPart":"CCCCCC","partDescription":"N/A","price":"0.00","quantity":"25"}]}
</string>
这不是本来打算不出我所料获得JSON但是我现在无法做任何事情,必须在XML中处理它,只需将内部格式化的json转换为json对象即可。
我曾尝试为以下太:
$(document).ready(function() {
$.ajax({
type: "GET",
url: "http://www.webservice.com/blahblah.asmx/blahb123",
data: "tnWsGuid=TEST1",
dataType: "xml",
contentType: "text/xml",
success: function(msg)
{
alert("sucess")
},
error: function(e)
{
alert(JSON.stringify(e));
}
});
});
最后,我将输出从Firefox这里的萤火虫响应的两个例子我试过(JSON/XML)
JSON:http://i.imgur.com/zJy4BvD.jpg
XML:http://i.imgur.com/6qiGVwQ.jpg
非常感谢您的阅读!
调试Web服务以确定拒绝您的请求的原因确实很难,无法访问该Web服务。 – Quentin 2013-04-09 15:18:29
根据您提供的信息非常有限,看起来该服务未授予其他来源的JS访问权限。您无法让网站上的浏览器读取服务中的数据。移动(至少部分)您的逻辑服务器端。 – Quentin 2013-04-09 15:20:17
如果我能够访问Web服务,我正在尝试与这个人联系,特别是我可以做什么来启用此权限? – Surep 2013-04-09 15:25:16