请求 JSONP 时的文本/html 输出
text/html output when requesting JSONP
在过去的一两周里,我一直在玩jQuery库。
非常方便!我现在正在使用 AJAX 请求来检索天气、当前下载等内容,到目前为止进展顺利!
我现在尝试连接到我的ISP以获取我当前的数据使用量(峰值,非峰值等(。
当我使用 Chrome 时,我可以手动在网址中输入变量,并在浏览器中显示所需的 JSON 代码。问题是,它似乎返回text/html
而不是application/json
。
当您进入开发人员工具时,它会显示text/html
.这使我很难使用 AJAX 和 JSONP
从我的主服务器检索数据。有关失败的查询,请参阅此处(但您仍然可以看到 JSON 格式的text/html
输出!
ISP
上的 JSON 查询失败
我的问题是,我如何从服务器URL获取这些数据,然后将其制作成jQuery可以读取的JSON?
当我尝试.load
时,$.get
功能我遇到了跨源问题......
编辑:这是API的PDF文档(在页面底部下载(请注意,我需要附加某些值(用户/传递/令牌(。我的最终目标是让我的JS读取这些值并存储它们。
问题是,它似乎返回
text/html
而不是application/json
。
这是一个服务器端问题。去提交错误报告。
这使我难以检索数据
不是本身。您应该能够覆盖如何解析响应的设置,例如使用 datatype
参数在 jQuery 中。
使用 AJAX 和 JSONP
请注意,您不能使用 JSONP,因为该 API 不支持它(从文档和简单的?callback=test
尝试来看(。如果需要这方面的支持,请针对服务提供商提交错误报告。
当我尝试
.load
时,$.get
函数我遇到了跨源问题......
是的。他们也不发送 CORS 标头。我怀疑此 API 仅在内部使用,并且由不受同源策略约束的设备使用。
我怎样才能从服务器URL获取这些数据,然后将其制作成jQuery可以读取的JSON?
在您自己的服务器上使用代理(在与应用相同的域中运行(。它还可以修复该content-type
标头。
有关更多详细信息,另请参阅规避同源策略的方法,尽管大多数方法需要服务提供商的合作(以实现服务器端功能(。
如果我理解正确,你要求某个值,它会给你一个字符串。对于世界上的大多数API,它们都会发送一个字符串,您必须将其解析为JSON或某些语言代码。我建议查看解析 JSON 字符串链接。它解释了如何获取格式良好的字符串并将其解析为 JSON 可读对象。
var obj = jQuery.parseJSON( '{ "name": "John" }' );
alert( obj.name === "John" );
如果你继续继续并开始使用PHP,看看使用PHP解析JSON字符串
编辑:
使用 .done(( 方法在 AJAX 调用后从其他页面获取文本。
$.ajax(...).done(function(html){
//do what you want with the html from the other page
var object = $.parseJSON(html)
}
- 用Koa打印漂亮的HTML输出
- 如何在文本框中显示内部 HTML 输出
- 使用 HTML 输出标记查看可缩放图像并分配 src
- 有没有办法在使用 html 输出标签时控制图像的大小
- 我可以't从draft js中获取html输出
- 在使用append()后,美化html输出
- 使用Gulp Usemin将JS和HTML输出到不同的位置
- 使用外部JS文件对Servlet进行更改'的HTML输出
- 如何通过javascript更改html输出
- 你如何为 HTML 输出编写测试用例
- 奇怪的 HTML 输出
- AngularJS:将HTML输出写入文本文件
- 不知道如何使用 ajax 将 html 输出到页面上
- 在文本区域而不是 HTML 代码中显示 HTML 输出
- 请求 JSONP 时的文本/html 输出
- 表单提交时的 HTML 输出更新
- 余烬.js HTML 输出损坏
- 谷歌网络应用程序加载脚本不适用于HTML输出
- 使用 JavaScript 对 HTML 输出 (ASP.Net) 所做的更改立即撤消
- HTML-输出文本的元素