【发布时间】:2019-08-31 17:15:05
【问题描述】:
我现在正在使用 Linkedin V2 与我的应用程序集成。我在尝试将图片上传到 Linkedin 时遇到问题。
我已经从终端尝试了 CURL 请求(我使用的是 Ubuntu 操作系统)并得到如下响应:
终端命令(工作和文件上传):
curl -i --upload-file /Users/peter/Desktop/superneatimage.png --header "Authorization: Bearer redacted" 'https://api.linkedin.com/mediaUpload/C5522AQGTYER3k3ByHQ/feedshare-uploadedImage/0?ca=vector_feedshare&cn=uploads&m=AQJbrN86Zm265gAAAWemyz2pxPSgONtBiZdchrgG872QltnfYjnMdb2j3A&app=1953784&sync=0&v=beta&ut=2H-IhpbfXrRow1'
回复如下:
HTTP/2 201 日期:2019 年 4 月 10 日星期三 09:14:44 UTC 服务器:播放 设置cookie:lang=v=2&lang=en-us;路径=/;域=api.linkedin.com x-ambry-creation-time:2019 年 4 月 10 日星期三 09:14:44 UTC 访问控制允许来源:https://www.linkedin.com 内容长度: 0
在我的应用程序中集成 CURL 请求时遇到问题。我的应用程序中的 CURL 请求代码如下所示。
$headers = array();
$headers[] = 'Authorization: Bearer xxxxx';
$headers[] = 'X-Restli-Protocol-Version: 2.0.0';
$headers[] = 'Content-Type: multipart/form-data';
$ch = curl_init();
$options = array(
CURLOPT_HEADER => true,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_URL => 'https://api.linkedin.com/mediaUpload/C5522AQGTYER3k3ByHQ/feedshare-uploadedImage/0?ca=vector_feedshare&cn=uploads&m=AQJbrN86Zm265gAAAWemyz2pxPSgONtBiZdchrgG872QltnfYjnMdb2j3A&app=1953784&sync=0&v=beta&ut=2H-IhpbfXrRow1',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => array("upload-file" => '/Users/peter/Desktop/superneatimage.png')
// CURLOPT_POSTFIELDS => array("upload-file" => new CURLFile('/Users/peter/Desktop/superneatimage.png'))
);
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
print_r($response);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
回复为:
HTTP/1.1 400 Bad Request Server: Play Set-Cookie: lang=v=2&lang=en-us; 路径=/;域=api.linkedin.com 日期:2019 年 4 月 10 日星期三 09:16:25 GMT 内容长度:0 X-Li-Fabric:prod-lsg1 连接:keep-alive
Similar question from SO,这并没有解决我的问题。
【问题讨论】:
-
您没有上传任何文件,您只是发送文件路径。使用
@为文件路径添加前缀 是 进行文件上传的方式,但自 PHP 5.5.0 起已弃用,因此您应该使用 php.net/manual/en/class.curlfile.php -
如你所说,我在图像路径之前使用了
@,但这对我没有帮助。使用 PHP 7
标签: php curl linkedin-api php-curl