问题标签 [jsonp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
407 浏览

javascript - 放置在目录中时 jQuery-JSONP 插件失败

我有一个 HTML 页面,它使用JSONP 插件来优雅地处理我的 JSONP 调用中的错误。我的问题非常令人困惑(我希望它有一个简单易懂的“D'Oh!”解决方案:))。当 .js 文件与 HTML 页面位于同一目录并按如下方式加载时:

一切正常。但是如果我将它移动到内部 JS 目录,我所有的其他 JS 文件都在该目录中:

它总是调用错误函数。我用 FireBug 跟踪它并调用该$.jsonp函数,但立即跳转到错误函数。代码本身如下所示:

有任何想法吗?我真的很想以有组织的方式运送这个。谢谢你的时间。

几个事实:页面是在本地测试的(没有 Web 服务器)。没有权限/安全问题。同一目录中还有其他加载良好的 .js 文件。该错误发生在所有浏览器中。

更新:根据亚历克斯的建议,我下载了未缩小的版本并将其放在 js 目录中。我更改了 HTML 页面中的引用并使用 FireBug 进行了跟踪。该函数确实接收到正确的 URL 并且确实有效!
我从未缩小到缩小来回走动,结果很清楚:缩小版本搞砸了!
不过,我想知道什么会以它的位置很重要的方式搞砸一个功能???我应该只发布未缩小的版本而忘记它吗?

更新 2 - 解决方案:我自己缩小了打开的文件(我使用 Alex 的链接来获取JSMin 的 C# 代码),我编译并最小化了文件 - 它工作正常。然后我将它与我下载的文件进行了比较 - 回车被搞砸了。再次下载文件 - 一切正常。

0 投票
2 回答
2033 浏览

javascript - 使用 jQuery 请求 JSONP 时,我可以使用静态(即预先确定的)回调函数名称吗?

jQuery 文档列出了以下使用 $.getJSON 请求 JSONP 的示例:

而不是使用这个方法,因为这个参数会生成一个动态回调函数名:

我希望能够提前将其设置为硬编码的函数名称,如下所示:

这是有效的,因为我运行脚本并且我返回的 JSONP 将 JSON 对象包装在对 test() 的调用中。

但是,我不知道如何设置回调函数。不应该这么简单吗?

当我尝试这样做时,我得到了包装在 test() 中的 JSONP,但是我定义的函数 test() 从未被调用。我错过了什么吗?

谢谢你的帮助!

0 投票
3 回答
12775 浏览

jquery - 如何使用带有基本身份验证的 JQuery 进行 JSONP 调用?

使用 JQuery,我将如何调用需要基本身份验证的 JSONP API?

我可以以编程方式处理这个问题,还是用户必须交互并在登录对话框中输入用户名和密码?

0 投票
8 回答
47646 浏览

php - JavaScript:如何创建 JSONP?

我有两个域,example1.com 和 example2.com

从 example1.com,我想调用我在 example2.com 上的 JSON API。知道这是不允许的,我突然想到 - 这正是 JSON P被创建的原因。

问题是,如何修改我的 JSON API 以使其支持 JSONP?

基本上,我如何创建回调 api?

更新

我的服务器端语言是 PHP

0 投票
3 回答
3676 浏览

class - Grails:JSON 文件中没有 id 和类的 JSONP 回调

我正在开发基于 REST 的界面,人们可以在其中获取 json 文件。客户端需要从另一个域访问该文件。我使用到目前为止有效的jsonp。我的问题是 Grails 中的渲染。目前我使用'as JSON'来编组对象:

到达客户端的 Json 文件包含所有属性,包括idclass,我不想在其中拥有这些属性。如果不是 jsonp,我会这样做,效果很好:

那么在呈现“user as JSON”时如何从 json 中获取 id 和 class 属性?任何想法?

最好的问候, 克拉斯

0 投票
3 回答
3852 浏览

jquery - 带有 Rails 的 JSONP

我正在尝试使用 Rails/Prototype 从远程站点检索 JSON 数据。

我发现Prototype 有一个分支,它有一个Ajax.JSONRequest()功能。我不能让它工作。

jQuery 有一个$.getJSON()函数,但我正在使用一些 Prototype 函数,我宁愿不切换到 jQuery 或使用无冲突模式。

我错过了什么?这似乎可以通过 Rails 或 Prototype 轻松完成。

0 投票
9 回答
246589 浏览

jquery - getJSON 调用中的错误处理

如何处理 getJSON 调用中的错误?我尝试使用 jsonp 引用跨域脚本服务,如何注册错误方法?

0 投票
2 回答
799 浏览

jquery - JSONP + onbeforeunload + 后退按钮 + 问题

我正在尝试在“beforeunload”事件上对服务器进行 JSONP 调用。在我开始使用后退按钮之前,这一切都很好。如果我离开页面然后在下次调用 beforeunload 事件时按“返回”,它似乎发出 JSONP 请求,但服务器从未收到它。

注意(1):这已经在 IE 和 FF 上测试过(问题出现在两者上)。

注意(2):我也使用 jQuery.getJSON 方法进行了测试,它有同样的问题,所以我认为 makeJSONPCall 函数是正确的。(我可能是错的)

有什么想法吗?

一些上下文代码:

JSONP 调用:

谢谢

0 投票
1 回答
867 浏览

drupal - Drupal node.save 和 JSONP

我在使用 MooTool 的 JSONP 调用 Drupal node.save 时遇到问题。这是一个例子。

这是我的要求:

回调 Request.JSONP.request_map.request_1
方法 node.save
sessid 123123123123123
node {"type":"blog","title":"New Title","body":"这是博客正文"}

这是我的结果

HTTP/1.0 500 内部服务器错误

我之前得到了这个工作,但我使用了 AMFPHP 并且能够将对象发送到 drupal。我假设这与 Drupal 期望一个对象有关,但由于它是一个 GET 它被转换为一个字符串。有没有办法在不破解代码的情况下解决这个问题?

这是我的代码:

我的 Drupal 服务 JS 代码:

我正在尝试连接这些点,但对 Drupal 不太熟悉,但我想我需要做的就是将字符串转回一个对象。我应该在哪里寻找任何想法,或者是否有现有补丁?

0 投票
2 回答
3513 浏览

jquery - XML 不能是整个程序

我正在使用 jquery 对 REST Web 服务进行 $.ajax() 调用。根据我找到的文档,我需要使用 jsonp 作为数据类型才能进行跨域调用(实际返回的是 XML 文档)。但是,在运行我的代码时,我收到错误“XML 不能是整个程序”。

有谁知道这个错误是什么意思以及如何修复它(如果有的话)?谷歌搜索没有提供太多信息,关于这个主题的其他堆栈溢出帖子对我也没有帮助。

如果您还有其他问题,请告诉我。