如何在Mozilla Firefox中获取web服务数据
How to fetch web service data in Mozilla Firefox?
我正在用HTML做一个项目,只使用JavaScript。我有一个从web服务(.asmx)获取数据的函数,它运行得很好。但在Firefox中,Chrome不起作用。这是代码,请验证:
function CreateXMLHttpRequest()
{
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
else {// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
function CallWebService() {
var objXMLHttpRequest = CreateXMLHttpRequest();
objXMLHttpRequest.open ("POST",
"http://www.xxxxxxxxx.com/WebServicesp/WebMethods.asmx",
false);
objXMLHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
var packet='<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body></soap:Body></soap:Envelope>';
objXMLHttpRequest.send(packet);
var res=objXMLHttpRequest.responseText;
alert(res);
}
尝试以下代码:
function CallService() {
jQuery.support.cors = true;
$.ajax({
type: "POST",
url: "url/Service1.asmx/servicename",
dataType: "json",
data: "{}",
contentType: "application/json; charset=utf-8",
success: OnSuccess,
error: OnError
});
}
function OnSuccess(data, status) {
alert("success");
alert(data.d);
}
function OnError(request, status, error) {
alert(status);
}
$(document).ready(function () {
CallService();
});
您可能会收到一个关于跨域ajax请求的js错误,在这种情况下,它在InternetExplorer中可以正常工作,但在其他浏览器上不能正常工作,因为IE不强制执行跨域安全策略
这将帮助您了解跨域、跨域错误
如果是这种情况,您需要tr JSONP或curl来获取数据
希望能有所帮助
你能从firebug控制台发布错误消息吗?
html页面是否与Web服务的端点url来自同一域?如果没有,那么这就是其他人在这里指出的跨域违规问题。检查是否有任何javascript错误。
我会尝试安装名为篡改数据的插件https://addons.mozilla.org/en-US/firefox/addon/tamper-data/?src=search
或者叫做fiddler的软件http://fiddler2.com/fiddler2/
这些将向您显示实际的请求和响应,因此您将能够在实际请求中找到问题(如果有的话)。
相关文章:
- 如何获取使用我们的脚本或web应用程序的网站名称
- 在JavaScriptAjax调用中从web服务中的XMLDocument获取响应.
- 如何在asp.net中获取动态创建的文本框web控件的值
- 通过web应用程序获取客户端监视器的分辨率
- 如何获取运行我的 Web 应用程序的用户的 Windows 登录用户名
- 在设置用户后,从 JavaScript JSON 请求中获取 Web 服务 (asmx) ASP.NET Windows
- 获取Web服务器时间并将其显示在网页上的正确方法
- 如何传递字符串javascript变量以获取web.config值
- 使用javascript在web部件页面中获取web部件HTML id
- 如何在Mozilla Firefox中获取web服务数据
- 使用jQuery.getJson获取Web API
- 如何获取Web Sql错误的上下文
- 如何在javascript中使用RoutePrefix获取Web API方法的有效url
- 如何从本地html文件获取web服务器's内容
- 如何使用Javascript获取web url内容
- 获取web用户's时区作为字符串
- 无法从客户端的ajax获取Web服务中的会话状态
- 动态获取web套接字URL
- 使用 JS 动态获取 Web 服务器的地址
- 如何使用python获取web浏览器的源代码