使用PHP CURL如何通过基本身份验证发布json数据

使用PHP CURL如何通过基本身份验证发布json数据,php,api,curl,php-curl,Php,Api,Curl,Php Curl,我想使用带有基本身份验证的PHP curl发布数据。这是我的代码,但我无法使用API发布。但它是和邮递员一起工作的 $urlp = "URL/sap/opu/odata/sap/ZOSA_UPLOAD_SRV/AccountOrderSet?sap-client=900"; $username = '*****'; $password = '********'; $ch = curl_init (); curl_setopt($ch,CURLOPT_URL,$urlp

我想使用带有基本身份验证的PHP curl发布数据。这是我的代码,但我无法使用API发布。但它是和邮递员一起工作的

$urlp = "URL/sap/opu/odata/sap/ZOSA_UPLOAD_SRV/AccountOrderSet?sap-client=900";
$username = '*****';
$password = '********';


$ch = curl_init ();
  curl_setopt($ch,CURLOPT_URL,$urlp);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  curl_setopt($ch,CURLOPT_MUTE,1);
  curl_setopt($ch,CURLOPT_USERPWD,"$username:$password");
  curl_setopt($ch,CURLOPT_USERAGENT,"Proventum Proxy/1.0 (Linux)");
  curl_setopt($ch, CURLOPT_TIMEOUT, 10); //times out after 10s
  curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
 curl_setopt($chp, CURLOPT_HTTPHEADER, array(
                'Content-Type: application/json',
                'Accept: application/json',
                'X-Requested-With: application/json')
            );
            
  if ($HTTP_REFERER) {
    curl_setopt($ch,CURLOPT_REFERER, $HTTP_REFERER);
  }
  
      curl_setopt($ch,CURLOPT_POST,1);
      curl_setopt($ch,CURLOPT_POSTFIELDS,$datap_string);
    
  $result = curl_exec ($ch);
  print $result;
  curl_close($ch);
给你, 添加到HTTPHEADER选项:

Authorization: Basic base64encode(username:password)
例如:

curl_setopt($chp, CURLOPT_HTTPHEADER, array(
            'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=',
            'Content-Type: application/json',
            'Accept: application/json',
            'X-Requested-With: application/json')
        );

邮递员的密码呢?你从邮递员那里复制了密码并使用了吗?