当前位置: 首页 > 面试题库 >

XMLHttpRequest无法使用jQuery加载URL

饶德本
2023-03-14
问题内容

我正在尝试从“远程”网站获取一些json数据。我在99000端口上运行Web服务,然后在99001端口上启动网站(http://
localhost:99001 / index.html)。

我收到以下消息:

    XMLHttpRequest cannot load http://localhost:99000/Services.svc/ReturnPersons. Origin http://localhost:99001 is not allowed by Access-Control-Allow-Origin.

即使以HTML文件启动网页,我也会得到以下信息:

    XMLHttpRequest cannot load http://localhost:99000/Services.svc/ReturnPersons.Origin null is not allowed by Access-Control-Allow-Origin.

Web服务返回数据。我尝试捕获这样的数据项:

var url = "http://localhost:99000/Services.svc/ReturnPersons";
$.getJSON(url, function (data) {
success: readData(data)
});
function readData(data) {
    alert(data[0].FirstName);
}

我正在尝试获得以下结构:

[{"FirstName":"Foo","LastName":"Bar"},{"Hello":"Foo","LastName":"World"}]

您知道我为什么会收到此错误吗?


问题答案:

您无法执行XMLHttpRequest跨域,唯一的“选项”将是称为JSONP的技术,其含义如下:

要开始请求,请执行以下操作:<script>使用远程URL
添加一个新标记,然后确保该远程URL返回一个有效的JavaScript文件,该文件会调用您的回调函数。某些服务支持此功能(并让您在GET参数中命名回调)。

另一种简单的方法是在本地服务器上创建一个“代理”,该代理将获取远程请求,然后将其“转发”回您的javascript。

编辑/添加:

通过检查URL是否包含“ callback
=?”,我看到jQuery具有对JSONP的内置支持。(其中jQuery将用实际的回调方法替换?)。但是您仍然需要在远程服务器上进行处理以生成有效的响应。



 类似资料:
  • 我有问题从api接收数据与所有其他链接,这是可以的,但这一个是如此困难…这是代码 这是我正在使用的php代码。 在控制台上显示日志---->XMLHttpRequest无法加载文件:///d:/install/xampp/htdocs/allinone/proxy.php?url=https://na.api.pvp.n…pectatorgameinfo/NA1/26667724?api_key=

  • 问题内容: tl;dr; About the Same Origin Policy 我有一个Grunt进程,用于启动express.js服务器实例。直到现在,当它开始为空白页提供服务时,它的工作情况都非常好,在Chrome(最新版本)的开发人员控制台的错误日志中显示以下内容: XMLHttpRequest无法加载https://www.example.com/ 所请求的资源上没有’Access-C

  • 问题内容: 我使用以下方法将jQuery库附加到dom: 但是当我运行时: 控制台报告错误: 如何动态加载jQuery以及将其放入dom中使用它? 问题答案: 这里有一个工作的JSFiddle,上面有一个小例子,它可以确切地说明您正在寻找什么 这种动态加载JavaScript的方法存在一些问题。当涉及到非常基础的框架(如jQuery)时,您实际上可能想静态地加载它们,因为否则,您将必须编写一个完整

  • 我想用cdn的axios 但是我得到了一个错误:拒绝加载脚本的https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js'因为它违反了以下内容安全策略指令:“script src'self'”。请注意,未显式设置“script src elem”,因此将“script src”用作回退。

  • 我在一个网站上加载jQuery时遇到了一个问题,我在自己的供应商文件中使用了一个缩小版,在控制台中出现了这个语法错误: 这个站点上有一个旧版本的JQuery,我不能删除它,在加载供应商库和JS之前,我在HTML文件的顶部放了一个noconflict。有什么想法吗? 提前致谢:)

  • 问题内容: 我是Angular SPA的新手,这是我第一次通过Googling获取代码并尝试运行。但是我在控制台中遇到一些错误。我不知道为什么,找到了以下控制台错误列表: XMLHttpRequest无法加载文件:/// C:/Users/hp/Downloads/single-page-app-angularjs- master/home.html。跨源请求仅支持以下协议方案:http,数据,c