jquery - JSONP如何检索文本

标签 jquery jsonp

我确实了解 JSON/JSONP 的作用,但我不是程序员,不知道如何提取简单的基础知识以供简单使用。我读过很多关于 JSONP 的文章,以及很多有关 JSONP 各种用法的示例,但我还没有找到一个从另一个页面检索文本的简单示例(例如 <a href="http://www.domain.com/external/text.aspx" rel="noreferrer noopener nofollow">http://www.domain.com/external/text.aspx</a> )。

有人可以举一个用于将文本检索到 div 中的 jQuery/JSONP 设置示例吗? 我认为这是 JSONP 的一个非常基本的用法。

最佳答案

首先,重要的是要了解,要使 JSONP 正常工作,服务器必须知道将通过 JSONP 请求与它联系。换句话说,如果服务器没有正确准备,您不能只是向某个随机服务器发出请求并期望它能够工作。

如果您确实知道某个服务器的 URL 旨在接受和响应 JSONP 请求,那么它将返回给您的是包装在函数调用中的 JSON 表达式。您的页面将包含该函数,因此当结果从服务器返回时,浏览器将解释 JSON 表达式,然后调用该函数。

因此,如果您想要创建一个返回漂亮文本 block 的服务,您将像这样调用该服务:

$.getJSON("http://www.domain.com/external/text.aspx?callback=", function(data) {
  $('#targetDiv').text(data.text);
});

jQuery 代码将准备一切,以便服务器将被告知(通过 HTTP 请求中名为“jsonp”的参数)要调用的函数的名称(并且 jQuery 本身将为您构建该函数)。服务器应该响应如下内容:

jqueryFunctionName({text: "This is a nice block of text."})

关于jquery - JSONP如何检索文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2499997/

相关文章:

javascript - 检测哪个类被点击了 jQuery

javascript - 如何将参数传递给 jQuery $.getJSON 回调方法?

javascript - jQuery parseHTML 结果不符合预期

javascript - 对 JSONP 请求的工作原理感到困惑

json - 在 YUI3 数据源中使用 JSON 而不是 JSONP

javascript - 控制颜色变化

javascript - 如何根据光标的来源对元素执行操作

javascript - 跨域jquery ajax(Jsonp) : Uncaught SyntaxError: Unexpected token : (colon)

javascript - 通过浏览器中运行的 JavaScript 将数据推送到 Google 电子表格

javascript - Jsonp回调函数不起作用?我这样做错了吗?