Dynamics NAV Odata请求返回HTTP / 1.1 415不支持的媒体类型

问题描述

Am为客户卡调用dynamics NAV odata API,以使用php的curl创建新客户。以下是使用的参数

$url = "http://XXX:7048/DynamicsNAV110/OData/Company('CRONUS%20International%20Ltd.')/CustomerCard?%24format=json";
$body["name"] = $company_name;
$body["Phone_No"]= $phone;
$body["address"] = $company_address;
$json_args = json_encode($body);

$ch = curl_init();
curl_setopt( $ch,CURLOPT_URL,$url);
curl_setopt( $ch,CURLOPT_HEADER,[
'Connection: Keep-Alive','Accept: application/json','Cache-Control: no-cache','Content-Type: application/json']);
curl_setopt( $ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt( $ch,CURLOPT_VERBOSE,CURLOPT_POST,CURLOPT_POSTFIELDS,$json_args);
curl_setopt( $ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt( $ch,true);

curl_setopt($ch,CURLOPT_HTTPAUTH,CURLAUTH_NTLM);
curl_setopt($ch,CURLOPT_UNRESTRICTED_AUTH,true);
curl_setopt($ch,CURLOPT_USERPWD,"XXX:YYY" );

$verbose = fopen('temp','w+');
curl_setopt($ch,CURLOPT_STDERR,$verbose);
$response = curl_exec( $ch );
curl_close($ch);
echo $response;

但是我不断收到415错误“不支持的媒体类型。

Accept: */* Content-Length: 50 Content-Type: application/x-www-form-urlencoded

* upload completely sent off: 50 out of 50 bytes
* Mark bundle as not supporting multiuse < HTTP/1.1 415 Unsupported Media Type < Content-Length: 98 < Content-Type: application/json;odata=minimalmetadata;streaming=true;charset=utf-8 < Server: Microsoft-HTTPAPI/2.0 < X-Content-Type-Options: nosniff < DataServiceVersion: 3.0;

请帮助!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)