我正在使用KODAK api在我的网站中集成照片打印功能。一切正常,但在创建订单时会显示错误消息,如下面的URL
所示如果您无法看到错误消息,则可以看到我收到的消息
HTTP状态401
GlassFish Server开源版3.1.2.2
出于这个原因,我还谈到了柯达api技术支持,但是他们说确保在制作时将正确的“请求方法”设置为POST,将“Content-Type”设置为application / x-www-form-urlencoded这个电话。
我使用cURL进行此调用,但不知道如何设置请求类型& CURL请求中的内容类型。
我正在使用下面的代码。请建议&纠正我的原因。
$ch = curl_init("https://ws.test.kdfse.com/vasp2/rest/order/PNPlasqTouch_T1366049430039_OKS13105x64222081_CTARGET/status/current");
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_TIMEOUT,60);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,0);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
$result=curl_exec ($ch);
echo "<pre>";print_r($result);exit;
提前致谢。
答案 0 :(得分:0)
你可以使用;
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
最终代码将是;
$ch = curl_init("https://ws.test.kdfse.com/vasp2/rest/order/PNPlasqTouch_T1366049430039_OKS13105x64222081_CTARGET/status/current");
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_TIMEOUT,60);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,0);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
curl_setopt($curl, CURLOPT_USERPWD, "your_username:your_password");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
$result=curl_exec ($ch);
echo "<pre>";print_r($result);exit;
更新:有关设置http标头的详细信息,请参阅here。此外,您使用的是安全服务,您可以将CURLOPT_SSL_VERIFYPEER
和CURLOPT_SSL_VERIFYHOST
设置为1
答案 1 :(得分:0)
HTTP Status 401
表示您未经授权。我点击了你的链接,它要求输入用户名/密码。因此,请按如下方式设置身份验证:
// use your user/password at here
curl_setopt($curl, CURLOPT_USERPWD, "username:password");