0
マニュアルから任意のwebserviceにPHPで構築コードが必要です。私はテスト環境を持っています。私が1つのイメージを投稿するとうまくいきます。それ以上の画像を投稿する必要がある場合、正常に動作しません。マニュアルではこれです:私は、サーバーに複数のファイル、最後のものだけアップロードをアップロードする必要がある場合cURLより多くのファイルをアップロードする
$sql[2] = "SELECT * FROM table WHERE car_id='".$car['id']."'";
$result[2] = mysql_query($sql[2]);
if(mysql_num_rows($result[2])>0){
$request = curl_init();
curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($request, CURLOPT_PROXY, $proxy);
curl_setopt($request, CURLOPT_USERPWD, $user . ":" . $pass);
curl_setopt($request, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($request, CURLOPT_RETURNTRANSFER, TRUE);
while($img = mysql_fetch_array($result[2])){
$file = '@inzerce/'.$img['nazev'];
$post['image'] = $file.";type=image/jpeg";
}
curl_setopt($request, CURLOPT_POSTFIELDS, $post);
curl_setopt($request, CURLOPT_URL, $url);
curl_setopt($request, CURLOPT_HTTPHEADER, array('Host: services.mobile.de','Content-type: multipart/form-data; boundary=vjrLeiXjJaWiU0JzZkUPO1rMcE2HQ-n7XsSx', 'Accept: application/vnd.com.example.api+json'));
curl_setopt($request, CURLOPT_HEADER, TRUE);
curl_setopt($request, CURLINFO_HEADER_OUT, TRUE);
$result2 = curl_exec($request);
$info2 = curl_getinfo($request);
curl_close($request);
}
しかし:
curl -v -s -u username:password \
-H "Content-Type: multipart/form-data" \
-H "Accept: application/vnd.de.mobile.api+json" \
-F "[email protected];type=image/jpeg" \
-F "[email protected];type=image/jpeg" \
-XPUT 'https://www.example.com/seller-api/sellers/12/ads/217221/images'
ここに1つのファイルのアップロードのために動作するコードです。配列に画像を挿入しようとすると($ post [$ id []] ['image'])、サーバはこのファイルを受け付けません。 $ post ['image']を$ post ['image'。$ img ['id']]に書き直そうとしましたが、どちらもうまくいきません。私はbashで試してみました。イメージ以外のものは動作しません。
誰でも手助けできますか?あなたは配列にそれを渡す必要があり
あなたは '$ポスト[ 'イメージ'] [] = $ファイルを使用して試してみる。 ";タイプ=画像/ JPEG"。 ' –
mobile.de APIの実例をここに掲載しました:https://stackoverflow.com/a/45281102/8306775 –