パブリッシュApiを使用してストリートビューで球状画像をアップロードしようとしています。 イメージデータとプレースアソシエーションのアップロードはうまくいきますが、見出しとgpsの位置データをアップロードしようとすると、イメージサーバーに「OK」が返されますが、見出しも位置もイメージに関連付けられませんでした。ストリートビューパブリッシュAPIを使用して見出しとGPSを含むパノラマ画像をアップロードします。
私はinfoアップロードの最後のステップで使用しているPHPコードですが、どこが間違っているのか分かりません。
$data['uploadReference']['uploadUrl']=$upload_url;
$data['pose']['heading']=$heading_north;
$data['pose']['latLngPair']=$latLngPair;
$data['captureTime']['seconds']=time();
$data['places']['placeId']=$placeid;
$data_string = json_encode($data);
$ch = curl_init('https://streetviewpublish.googleapis.com/v1/photo?key='.$_GOOGLE_API['api_key']);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'authorization: Bearer '.$_GOOGLE_API['access_token'],
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string))
);
$result = curl_exec($ch);
curl_close ($ch);
EDIT:
示唆したように、私は第2工程を実施してきましたが、何も変わりません。.. カール応答がまだエラーが含まれていません。..
$ch = curl_init('https://streetviewpublish.googleapis.com/v1/photo/'.$photo_id.'?key='.$_GOOGLE_API['api_key'].'&updateMask=pose.heading');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'authorization: Bearer '.$_GOOGLE_API['access_token'],
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string))
);
$json_response=curl_exec($ch);
curl_close ($ch);
echo $json_response;
EDIT2:この手順Googleのapiは遅く、編集されたデータは数分で表示されます..
EDIT3(解決済み):GET写真(リスト)に問題がいくつかあります。ちょうど更新された正しい値を取得するには、効果的なキャッシュ更新を強制するためにGET写真(シングル)を要求する必要があります。
私は示唆したように2番目のステップを実装しましたが、何も変わりません。メイン質問の編集を参照してください – recursio
どのようにポーズデータをチェックしますか? photo.getリクエストで? –
GETの写真リクエストでデータをチェックし、写真と関連データのリストを取得します。 – recursio