使用curl 访问基于Authorization Basic认证页面,这是成功的代码
function postJsonData($json){
$ch = curl_init("http://localhost/issues.json");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
// Headers
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Authorization: Basic base64($username.$password)",
"Content-Type: application/json",
));
//$filename = "test.json"; /// Change this path to yours
//$fd = fopen($filename, 'r');
//curl_setopt($ch, CURLOPT_UPLOAD, TRUE);
//curl_setopt($ch, CURLOPT_INFILE, $fd);
//curl_setopt($ch, CURLOPT_INFILESIZE, filesize($filename));
curl_setopt($ch, CURLOPT_POSTFIELDS, $json); // POST this data
// Send synchronously
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); 修改成 curl_setopt($curl, CURLOPT_POST, true); 之后提交httpstatus 404,不知道为什么,记录一下