我正在使用CURL向URL发送JSON请求。
这是我的代码:
$uri = "http://xxxxx:3434/config?command=xcxc";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
$data = '{"Request":{"rel":{"sta":"0"}}}';
$headers= array('Authorization:Basic xxxxxx=','Content-Type: application/json');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$result = curl_exec($ch);
curl_close($ch);
请求未通过并返回HTTP / 1.0 401未经授权的WWW-Authenticate。授权密钥是正确的,但它是否是传递密钥(通过数组)的正确方法?
我在这里做错了什么?
答案 0 :(得分:0)
让这个工作。
'Authorization:Basic xxxxxx='
导致问题并返回HTTP / 1.0 401未经授权的WWW-Authenticate(即使这是我使用REST客户端检查并正常工作的正确授权密钥)
当我使用用户名/密码组合时,它起作用了。
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);