- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在发出 AJAX 请求以从服务器获取一些数据。为了限制请求(由于大量请求会破坏服务器)我为请求设置了超时。我收到错误:
Uncaught ReferenceError: jQuery22303175114964962158_1470743444495 is not defined
谁能帮我解决
jQuery.ajax({
url: url, // some url link here
type: "GET",
contentType: "application/jsonp; charset=utf-8",
dataType: 'jsonp',
timeout: 5000,
success: function(data, status) {
// some stuffs
},
error: function (xhr, status, error) {
// some stuffs
}
});
我提到了this link 。并尝试添加诸如 {'jsonpcallback':'mycallback'}
之类的属性。但这对我不起作用。
提前致谢。
最佳答案
发生这种情况是因为请求花费的时间超过了您指定的 timeout
限制。当请求花费的时间超过timeout
时限制,请求被视为失败并且永远不应完成。如果您想要容忍需要超过五秒才能完成的请求,则应指定更高的 timeout
值(或者完全省略它,如果您可以接受无限期等待)。
JSONP 的工作原理是在 <script>
中加载文件。表单元素
jQuery22303175114964962158_1470743444495({ some: "data" });
这会导致一个名为 jQuery22303175114964962158_1470743444495
的函数以一些数据作为参数来运行。 jQuery 自动设置一个名为 jQuery22303175114964962158_1470743444495
的函数当它从服务器请求该脚本文件时(这是一个最终调用您的 success
函数的函数)。但是,当您设置 timeout
,当超时时间窗口结束时,jQuery删除该函数,因此您会看到错误 jQuery22303175114964962158_1470743444495 is not defined
因为<script>
加载,但它调用的函数在五秒后不再存在。
假设我想让我的 friend 来我家给我一把 Screwdriver 。我们通过电话进行了以下交流:
ME: Hi, friend! Please let me borrow your screwdriver. Can you drop it off at my house?
FRIEND: I'd love to. Where can I leave it?
ME: I am putting a purple basket on my porch. Please leave it in there.
由于您设置了超时,因此在这个类比中,您还决定在等待五个小时后移除紫色篮子。当你的 friend 六个小时后出现时,他没有看到紫色的篮子(因为你在一小时前把它拿回来了)并说
FRIEND: Error: purple basket not found!
这里的解决方案当然是不要删除紫色篮子(即不要设置 timeout
值),除非您确实有充分的理由在固定时间段后拒绝响应。如果您确实有充分的理由在固定时间段后拒绝响应,那么如果您的请求在该时间段后失败也不是问题:这正是您想要的要求。
由于您不希望请求始终在五秒后失败,因此请勿设置 timeout: 5000
这会导致您的请求在五秒后失败。
关于jquery - Uncaught ReferenceError : jQuery22303175114964962158_1470743444495 is not defined in JSONP AJAX request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38850362/
如果可能的话,我想在答案中举一个具体的例子。 为了解释起见,我们这里有三个玩家。 我的服务器 (myserver.com) 客户端服务器 (myclient.com) 客户用户(通过 myclient
我想通过 JSONP 提供 Web 服务,并且想知道是否需要清理回调参数中的值。 我当前的服务器端脚本目前看起来像这样(或多或少。代码在 PHP 中,但实际上可以是任何东西。): header("Co
我有一个每分钟更新一次数据的 Web 服务器,并且希望使该数据可供所有类型的客户端使用。为了减少带宽,我使用 IF-MODIFIED-SINCE 和/或 IF-NONE-MATCH 设置 PHP 脚本
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 7 年前。 Improv
我正在努力使用 vue-resource 发出 JSONP 请求。任何人都可以提供一些工作示例来演示定义 jsonp 回调、处理 Vue 组件中的调用等的正确方法。 谢谢 **编辑:**对于其他人,让
我正在尝试获取 AngularJS 中 rest api 的 JSON 输出。以下是我面临的问题: Rest api url 中有端口号,AngularJS 为变量插入端口号。为此,我尝试了多种解决方
代码: 当我在浏览器中输入网址时,我可以看到所有对象,例如: link 但我似乎无法让它在我的代码中工作,我是否遗漏了什么? angular.module('ionicApp', ['ionic']
我在连接最近了解 JSONP 的一些点时遇到了麻烦。这是我的理解: 由于同源策略,禁止任何内容(包括 JSON)的跨域 XmlHttpRequests。这可以防止 XSRF。 您可以拥有一个带有返回
我正在使用 JSONP 进行 Ajax 调用以从第三方(与我的站点不同的域)获取 JSON 数据,它在 Chrome 和 Firefox 上工作但在 IE 上失败(9 和 10 是我试过的版本) .在
django rest 框架发行说明声称在 0.3.0 中重新添加了 JSONP 支持。我还在框架中找到了一个 JSONPRenderer 类。但是,我似乎找不到有关如何使用该东西的任何文档.....
我有一个使用 JSONP 的 WCF 服务(托管在 Azure 中)。它在 HTTP 上工作得很好,即,如果它仅接收 JSON,则仅返回 JSON,如果它接收 JSONP,则返回 JSONP。但是,一
有人知道为什么我的ajax失败吗? 我从这里通过 JSONP 获取数据: JSON Data 您可以使用此代码,并注意“警报”如何永远不会执行: $(document).ready(function(
我正在使用 jaubourg 的 jquery-jsonp module从与我的网站所在的域不同的域中获取数据。我从 jQuery 的 ajax 开始使用这个模块函数不支持 JSONP 请求的错误处理
我有一个使用 Jquery Mobile 制作移动 Web 应用程序的项目。我希望我的应用程序能够使用来自跨域 REST Web 服务的数据。很多人说用JSONP。但我仍然困惑如何使用它以及如何构建支
我正在使用 Angular 的 $http.jsonp() 请求,它成功返回了包含在函数中的 json: var url = "http://public-api.wordpress.com/rest
基于 Please explain JSONP ,我知道可以使用 JSONP 来绕过同源策略。 但是为了做到这一点,页面必须使用 标签。 我知道页面可以动态地发出新的脚本标签,例如: docum
在 jQuery 中使用 JSONP 时是否可能捕获错误?我已经尝试了 $.getJSON 和 $.ajax 方法,但都不会捕获我正在测试的 404 错误。这是我尝试过的方法(请记住,这些都可以成功运
我正在为一个带有嵌入推文的页面使用内容安全策略,我收到了 https://cdn.syndication.twimg.com 的报告。 ,这在我的政策中是不允许的。 这是一个很长的政策,但相关部分
使用 mootools 和 JsonP 我在 Firefox 错误控制台中收到“无效标签”错误 JsonP 似乎可以工作(我正确地获取了数据) {"jsondata":[{"title":"title
JSONP (JSON with Padding) 是 JSON 的一种 使用模式,可以让网页从别的网站那获取数据,即跨域读取数据 为什么我们从不同的域(网站)访问数据需要一个特殊的技术(JSONP
我是一名优秀的程序员,十分优秀!