我正在使用php curl函数进行自动身份验证,它工作正常。但我无法进入同一域上的其他页面,我认为会话未设置。请提前帮助我,谢谢。
答案 0 :(得分:2)
为了保留会话信息,您需要告诉CURL存储Cookie数据的位置。您可以使用curl_setopt设置的CURLOPT_COOKIEFILE
和CURLOPT_COOKIEJAR
选项执行此操作。
编辑以下是一个例子:
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt")
答案 1 :(得分:1)
您可能需要在转到其他页面时通过会话cookie发送以维持状态
答案 2 :(得分:1)
使用curl和rest-services,您没有会话。因此,作为一种解决方案,您的身份验证操作应该返回session_id,您应该在请求签名的下一个请求中传递该session_id。之后,您应该通过session_id实现其他安全检查。
对我而言,最好的方法是在拥有access_token,expired_in和refresh_token时集成OAuth2身份验证。 Refresh_token是可选参数,当access_token过期时,当您尝试通过refresh_token获取新的access_token时,可以使用它。