JavaScript 中的 XML 和 JSON 提要。允许访问,但仅有时允许
我注意到使用 javascirpt 访问 XML 和 JSON 提要时,访问经常被拒绝(我猜是出于安全原因......)。
Chrome 说:XMLHttpRequest 无法加载 graph.facebook.com/100001263589003/feed。 Access-Control-Allow-Origin 不允许 Origin fiddle.jshell.net。
正如您在此脚本中看到的:http://jsfiddle.net/sikko/RvQVX/2/
graph.facebook.com/100001263589003/feed?callback=? 可以工作
并且
graph.facebook.com/100001263589003/feed 不起作用
为什么?我怎样才能弄清楚 API 提供了诸如 facebook 回调之类的参数?
Something weird i've noticed with accessing XML and JSON feeds using javascirpt is that access is often denied (for security reasons I guess...).
Chrome says: XMLHttpRequest cannot load graph.facebook.com/100001263589003/feed. Origin fiddle.jshell.net is not allowed by Access-Control-Allow-Origin.
As you can see in this script: http://jsfiddle.net/sikko/RvQVX/2/
graph.facebook.com/100001263589003/feed?callback=? will work
and
graph.facebook.com/100001263589003/feed will not work
Why ? and how can I figure it out, that an argument such as callback for facebook is provided by the API ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当您包含
callback=?
时,您的 JS 库可能会转而使用 JSON-P(需要目标站点合作的跨域黑客)而不是 XMLHttpRequest(遵循同源策略)在 URI 中。阅读 API 文档
Your JS library is probably switching to use JSON-P (cross domain hack that requires the co-operation of the target site) instead of XMLHttpRequest (subject to the same origin policy) when you include
callback=?
in the URI.Read the documentation for the API