代码之家  ›  专栏  ›  技术社区  ›  DMin

同源策略-AJAX&使用公共api

  •  22
  • DMin  · 技术社区  · 14 年前

    http://www.example.com/form.php

    我从该页面发出一个ajax请求: http://example.com/responder.php

    由于相同的源策略(子域不同),它将失败。

    我试图理解的是,当请求和服务器明显不同时,AJAX请求如何从类似flickr的API中提取数据。




    例:为什么这个代码有效?

    $.getJSON('http://api.flickr.com/services/rest/?&;method=flickr...'
    

    Referred this Community Wiki ) 它在用吗 Cross Origin Resource Sharing ?

    谢谢!

    1 回复  |  直到 7 年前
        1
  •  16
  •   Community Lee Campbell    7 年前

    很少有已知的方法可以围绕同一起源策略工作。一种流行的技术是使用“脚本标记注入”,例如 JSONP <script> 标记不受同源策略的约束,第三方域上的脚本可以提供与提供的回调函数交互的可执行代码。您可能需要查看以下文章中的“提示和窍门”部分,以便进一步阅读该主题:

    您可能还对查看以下堆栈溢出文章感兴趣,以进一步了解其他技术,从而解决同一源策略的问题:


    更新:

    引用jQuery文档 $.getJSON()