Javascript 在JQuery中使用JSON协议的GetServerDate,而不是Buding

Javascript 在JQuery中使用JSON协议的GetServerDate,而不是Buding,javascript,jquery,html,ajax,json,Javascript,Jquery,Html,Ajax,Json,因此,我尝试进行一个简单的ajax调用,从服务器上的文件中检索一些数据。我可以通过网络浏览器访问该文件,并且我一直在学习有关该主题的教程,但这对我来说毫无帮助。 以下是javascript代码: <script type="text/JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script type="text/javascr

因此,我尝试进行一个简单的ajax调用,从服务器上的文件中检索一些数据。我可以通过网络浏览器访问该文件,并且我一直在学习有关该主题的教程,但这对我来说毫无帮助。 以下是javascript代码:

<script type="text/JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$.ajax({
  type: "POST",
  url: "https://www.mychoicetechnologies.com/Services/FMSUtilities.asmx/GetServerDate",
  data: "{}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function (msg) 
  {        
     document.getElementById('area').innerHTML = "Success! Retrieved a server response using AJAX.";
  },
  error: function (xhr, status, error)
  {        
     document.getElementById('area').innerHTML =  "1." + error +   "<br>";
     document.getElementById('area').innerHTML += "2." + xhr +     "<br>";
     document.getElementById('area').innerHTML += "3." + status +  "<br>";
     document.getElementById('area').innerHTML += "The script has failed";
  }
});
</script>

$.ajax({
类型:“POST”,
url:“https://www.mychoicetechnologies.com/Services/FMSUtilities.asmx/GetServerDate",
数据:“{}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(msg)
{        
document.getElementById('area').innerHTML=“成功!使用AJAX检索到服务器响应。”;
},
错误:函数(xhr、状态、错误)
{        
document.getElementById('area').innerHTML=“1.”+error+”
”; document.getElementById('area').innerHTML+=“2.”+xhr+”
“; document.getElementById('area')。innerHTML+=“3.”+状态+“
”; document.getElementById('area').innerHTML+=“脚本失败”; } });
运行此脚本时,输出为:

一,

2.[对象]

3.错误

脚本失败了


当我在Chrome中运行时,控制台会显示:

无法加载XMLHttpRequest。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”。(索引):1

这意味着您尝试访问的服务不允许来自其他域的请求

编辑以添加:


做一个
GET
而不是一个
POST
,会更有意义,因为你只想读,不想写。该服务返回的是XML,而不是JSON。

谢谢,我现在正在研究在服务器端使用Access Control Allow Origin来允许脚本通过。如果我省略数据类型:“json”,这就变成了CORS协议,对吗?我没有太多使用CORS,但我的印象是它只依赖于源/访问控制允许源标题<代码>数据类型只会影响JQuery返回后处理响应的方式。非常感谢,我已经正确地解决了这个问题。我的下一个问题是检索页面内容。