【问题标题】:how facebook does cross domain ajax call?facebook如何跨域ajax调用?
【发布时间】:2012-11-12 14:25:57
【问题描述】:

我期待创建一个包含 facebook Javascript API 提供的大部分功能的 javascript API。

FB.api
FB.init
FB.logout
FB.getLoginStatus
FB.login
FB.ui

我可以在远程网站中嵌入脚本标签,并且需要从该页面到我的服务器执行所有 ajax 调用。我正在创建一个架构,并且需要有人帮助他/她用他/她的出色想法来完成它。

【问题讨论】:

  • 你的问题到底是什么?
  • 为什么要重新创建已经由专业程序员完成的东西?
  • 我需要为我的网络应用程序创建 javascript API
  • @pex 我需要知道 facebook 如何进行跨域 ajax 调用。如果您使用 facebook javascript SDK 打开任何网站,那么您可以在 firebug 上看到他们如何轻松地对其服务器进行 ajax 调用。

标签: javascript ajax cross-domain


【解决方案1】:

看看https://github.com/facebook/facebook-js-sdk/blob/deprecated/src/core/xd.js

他们使用 rpc 变通方法(带有中继文件)、Flash 本地连接和 postMessage 的组合,以浏览器支持的为准。

【讨论】:

    【解决方案2】:

    你也可以看看Cross Site XmlHttpRequest(CORS)。从您的问题来看,您似乎可以控制将响应请求的服务器。在这种情况下,您可以调整标头以接收请求并响应跨域请求。

    然后,如果您在从嵌入式脚本发出的请求中配置请求标头,您的嵌入式脚本将能够从任何网页与您的服务器通信。

    我喜欢这种方法,因为它非常容易实现。但请注意浏览器支持!

    【讨论】:

      【解决方案3】:

      他们正在使用JSONP。它被广泛使用,并受到 JQuery 等 javascript 框架的支持。

      【讨论】:

        猜你喜欢
        • 2011-02-03
        • 2010-10-13
        • 1970-01-01
        • 1970-01-01
        • 2012-02-08
        • 2013-03-15
        • 1970-01-01
        • 1970-01-01
        • 2012-04-11
        相关资源
        最近更新 更多