【发布时间】:2011-02-09 10:31:02
【问题描述】:
我必须编写一个托管在不同域上的脚本。该脚本必须从我的服务器获取信息。
所以,stackoverflow 的用户告诉我,我必须使用 JSON-P 格式,经过研究,这就是我要做的。 (JSON-P 中提供的数据用于在其他网站上显示我的服务器上托管的一些信息)
如何从我的服务器输出 JSON-P?和
PHP中的json_encode函数一样吗如何设计输出 JSON-P 的树形模式 (你知道,比如:({“name”:“foo”,“id”:“xxxxx”,“blog”:“http://xxxxxx.com”}); 我可以从我的 XML 输出中窃取它吗? (http://bit.ly/9kzBDP)
每次访问者浏览我的小部件所在的网站时,它都会在我的服务器上发出请求,请求在客户端显示 JSON-P 数据。 这会显着增加 CPU 负载(网站上的 1 个访问者将拥有脚本 = 1 个 SQL 请求在我的服务器上输出数据),所以 有什么方法可以“缓存” JSON-P 信息输出 每天仅刷新一到两次并将其存储到“文件”中(在哪个扩展名中?)。
但另一方面我会说直接请求 JSON-P 数据(不缓存它)是一个优点,因为将集成脚本的网站 只想显示他们的信息,而不是全部数据。所以,用类似的东西制作一个脚本:
jQuery.getJSON("http://www.something.com/json-p/outpout?filter=5&callback=?", function(data) {
................);
});
过滤器=网站想要显示的信息。
- 额外问题:我必须使用 JS 框架来读取 JSON-P 吗?还是 JS pure 没有任何框架可以包含在页面上?
你怎么看?
非常感谢 ;)
【问题讨论】:
标签: jquery json cross-domain jsonp