0

为什么 Facebook 通过 POST 发送签名请求?事实上,如果签名请求是通过 GET 发送的,它将允许客户端 JavaScript 代码获取它。因此,应用程序可以存储在唯一的静态 html 文件中。

4

1 回答 1

0

两个原因:

1) 与使用 POST 参数发送的 URL 相比,复制/粘贴包含 GET 参数的 url 要容易得多。这就是为什么大多数敏感信息是通过 POST 而不是 GET 发送的。(注意——它在传输方面并不“更安全”,它只是不会出现在正常的服务器日志中并且不容易复制)。与签名请求共享 URL 不是您想要做的事情,Facebook 大概也有同样的感觉,所以让您更容易避免意外。

2) 作为一般规则,应该使用 GET 来影响状态,而不是对数据进行任何永久性更改。进行更改时应使用 POSTS。由于 Facebook 不知道您是否要根据 signed_request 更新数据库,因此它们以 POST 的形式发送 - 这是正确的做法。

于 2013-07-05T07:03:49.657 回答