【发布时间】:2011-05-25 11:32:10
【问题描述】:
我正在使用 php curl 功能进行自动身份验证,它工作正常。但我无法转到同一域上的另一个页面,我认为会话未设置。请帮助我,提前谢谢。
【问题讨论】:
-
请提供一些代码
标签: php authentication curl
我正在使用 php curl 功能进行自动身份验证,它工作正常。但我无法转到同一域上的另一个页面,我认为会话未设置。请帮助我,提前谢谢。
【问题讨论】:
标签: php authentication curl
为了保留会话信息,您需要告诉 CURL 在哪里存储 Cookie 数据。您可以使用CURLOPT_COOKIEFILE 和CURLOPT_COOKIEJAR 设置的curl_setopt 选项来执行此操作。
编辑这是一个例子:
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt")
【讨论】:
使用 curl 和 rest-services 你没有会话。因此,作为一种解决方案,您的身份验证操作应该返回 session_id,并且您应该在下一个请求签名的请求中传递该 session_id。之后,您应该通过 session_id 实施额外的安全检查。
对我来说最好的方法是在您拥有 access_token、expired_in 和 refresh_token 时集成 OAuth2 身份验证。 refresh_token是可选参数,当access_token过期时,你可以通过refresh_token获取新的access_token时使用。
【讨论】:
您可能需要在转到其他页面时发送会话 cookie 以维护状态
【讨论】: