当前位置: 代码迷 >> python >> Facebook使用GET而不是POST调用Google App Engine代码
  详细解决方案

Facebook使用GET而不是POST调用Google App Engine代码

热度:105   发布时间:2023-06-27 21:50:18.0

我一直在使用Python和 Google App Engine开发Facebook应用。 数周以来,一切正常,但突然停止了。

起初我以为是代码更改,所以我将整个dev目录回滚到了我知道可以使用的版本,但是仍然失败了。 我对应用程序设置进行的更改很可能导致了问题,但是,如果是这样,我将不知道是什么原因。

我发现问题在于,Facebook不是使用我的Main类的post(self)方法,而是使用GET进行调用。

有谁知道为什么Facebook会使用GET方法而不是POST? 这是一个IFrame应用程序。

谢谢,

用户使用应用程序时的典型流程始于用户登陆某些Canvas URL,例如 。 此时,Facebook将加载它的chrome,并为您的应用程序呈现标签。 您会注意到没有指定src。 Facebook使用一些JavaScript和标记,触发对您的应用程序的POST请求。 这样做是出于安全原因,因为敏感的用户数据只要作为POST数据发送,就不会通过HTTP Referrer标头发送。

尽管我不能完全确定这是原因,但似乎我从FBML应用程序更改为IFrame应用程序。 FBML模式依赖于POST调用,但IFrame似乎使用GET。 我是根据以及所看到的观察结果推断出这个答案的,这是唯一有意义的答案。

  相关解决方案