不同域上的用户身份验证

时间:2013-05-23 18:41:19

标签: php authentication

我在API上有一个PHP example.com,可根据Sessions对用户进行身份验证。

我正在开发移动应用程序,但每当用户向API发出POST Ajax请求时,它都会使用set-cookie标头进行响应。

显然,移动应用程序无法发送cookie,因为它们来自不同的域。

如何使身份验证过程在移动设备上运行?

1 个答案:

答案 0 :(得分:1)

RESTful API的规则#1:HTTP是无状态的 - 保持这种状态。

如果你想彻底解决你的困境,可以考虑实现一些东西,以便从GET,POST参数或标题之外获取会话ID(我通常使用Authorization标题,亲自进行)。这样您就不必依赖cookie,除非必须这样做。

对你的问题的一个hackish修复是将cookie域设置为* .example.com,它将映射每个域,或强制使用jQuery(如果你使用它)添加cookie {{1 callback(允许您修改请求的标头)。如果没有修改API的登录方法,这些是您唯一的选择。

相关问题