如图所示,当我尝试运行 https://www.example.com/Push_Order.php?orderId=1562 时,它会给我 401 Unathorized 错误。但是当我在浏览器中运行这个Url时,它运行良好。
任何想法我的错误或我错过了什么?
PHP卷曲代码
<?php
$ch = curl_init("https://www.example.com/Push_Order.php?orderId=1562");
curl_setopt($ch);
$response = curl_exec($ch);
curl_close($ch);
?>
并且此Push_Order.php文件仅包含插入查询。
答案 0 :(得分:12)
您的服务器上似乎已经在Apache中启用了授权,但您现在还没有意识到这一点,因为您的浏览器正在为您缓存用户名和密码。
您必须设置CURLOPT_USERPWD
选项,如下所示:
<?php
$ch = curl_init("https://www.example.com/Push_Order.php?orderId=1562");
curl_setopt($ch, CURLOPT_USERPWD, "myusername:mypassword");
$response = curl_exec($ch);
curl_close($ch);
?>
(空curl_setopt($ch)
很奇怪,无论如何都是无操作。)
在命令行中它应该像这样工作(包括URL中的用户名和密码):
curl https://myusername:mypassword@www.example.com/Push_Order.php?orderId=1562
答案 1 :(得分:0)