使用 Curl 和 PHP 保持会话活动:解决 401 未经授权的错误
要对用户进行身份验证并检索其详细信息,您的 Curl 代码必须维护会议。但是,您在成功登录后尝试访问用户详细信息时遇到 401 未经授权的错误。
问题在于您的 Curl 设置中缺少 CURLOPT_COOKIEFILE 选项。此选项指定执行后续请求时应从其中读取 cookie 的文件。如果没有此选项,Curl 不会发送保存的 cookie,从而导致授权失败。
要解决此问题,请将 CURLOPT_COOKIEFILE 添加到您的 Curl 代码中,引用与 CURLOPT_COOKIEJAR 一起使用的同一 cookie 文件。这将确保 Curl 从文件中读取保存的 cookie 并将它们包含在后续请求中:
$ch = curl_init('http://api.example.com/user'); curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIE_FILE); **curl_setopt($ch, CURLOPT_COOKIEFILE, COOKIE_FILE);** curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true);
通过包含两个选项 CURLOPT_COOKIEJAR 和 CURLOPT_COOKIEFILE,Curl 将正确处理会话 cookie,从而使您能够维护经过身份验证的 cookie。会话并成功访问用户详细信息。
以上是使用Curl和PHP维护用户会话时如何修复401未经授权错误?的详细内容。更多信息请关注PHP中文网其他相关文章!