Загрузите успешно, чтобы получить photoId, но не можете получить загруженное изображение из этого photoId

Я следую инструкции, чтобы загрузить ссылку на фото.
Я получаю фото после звонка.
Но я не могу получить изображение по телефону:

curl --request GET \
    --url 'streetviewpublish.googleapis.com/v1/photos?key=YOUR_API_KEY' \
    --header 'authorization: Bearer YOUR_ACCESS_TOKEN'

или позвоните по телефону:

curl --request GET \
    --url 'streetviewpublish.googleapis.com/v1/photo/PHOTO_ID?key=YOUR_API_KEY' \
    --header 'authorization: Bearer YOUR_ACCESS_TOKEN'

Я вижу, что в уроке говорится, что если вы получили photoId, значит загрузка прошла успешно. Как я могу убедиться, что моя фотография успешно загружена?

обновление: основываясь на мнении Mr.Rebot, я добавляю --verbose, чтобы увидеть детали ответа. Но я не могу найти ни одной ошибки из ответа. Я предполагаю, что основная причина может быть связана с загрузкой байтов фотографий на URL загрузки. Я проверяю детали ответа. Это не показывает сообщение типа "* загрузка полностью отправлена: 632 из 632 байтов" в "Загрузить метаданные фотоответа". Но я не знаю, как это решить.

Загрузка фото байтов в ответ URL загрузки показана ниже:

*   Trying 216.58.200.42...
* TCP_NODELAY set
* Connected to streetviewpublish.googleapis.com (216.58.200.42) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate: *.googleapis.com
* Server certificate: Google Internet Authority G2
* Server certificate: GeoTrust Global CA
> POST /media/user/114009162009986408485/photo/3946916238102603576 HTTP/1.1
> Host: streetviewpublish.googleapis.com
> User-Agent: curl/7.51.0
> Accept: */*
> Authorization: Bearer ya29.GlvKBHgR75-11mkyh-7Yy0YHSnY2at7ceBKkmcz6Kmt0axDqRD7iTfqp8_nfBZgQrU25V77WKk3gCBZ6w6ce9TBz26mLusLzZqjX7qUGi306Z_PhkPTSqfXZwte2
> Content-Length: 2684889
> Expect: 100-continue
> 
< HTTP/1.1 100 Continue
* We are completely uploaded and fine
< HTTP/1.1 200 OK
< X-GUploader-UploadID: AEnB2Uq1RvuwmbMZizf-MLlPcB8hJC2NBgpaEMR-K_AomU7nIQ7DTkv94Ekij3_zPNyPK7tTypkYywHualC_EnvzCoM2OuosuckDFF8OtoLT97CecFwnYk4
< Content-Length: 0
< Date: Mon, 18 Sep 2017 06:01:25 GMT
< Server: UploadServer
< Content-Type: text/html; charset=UTF-8
< Alt-Svc: quic=":443"; ma=2592000; v="39,38,37,35"
< 
* Curl_http_done: called premature == 0
* Connection #0 to host streetviewpublish.googleapis.com left intact

Загрузка метаданных фотоответа показана ниже:

Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying 216.58.200.234...
* TCP_NODELAY set
* Connected to streetviewpublish.googleapis.com (216.58.200.234) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate: *.googleapis.com
* Server certificate: Google Internet Authority G2
* Server certificate: GeoTrust Global CA
> POST /v1/photo?key=AIzaSyBINbdfV0eqE2fdc_ywJzL-oCa7fs_qNrQ HTTP/1.1
> Host: streetviewpublish.googleapis.com
> User-Agent: curl/7.51.0
> Accept: */*
> Authorization: Bearer ya29.GlvKBHgR75-11mkyh-7Yy0YHSnY2at7ceBKkmcz6Kmt0axDqRD7iTfqp8_nfBZgQrU25V77WKk3gCBZ6w6ce9TBz26mLusLzZqjX7qUGi306Z_PhkPTSqfXZwte2
> Content-Type: application/json
> Content-Length: 632
> 
* upload completely sent off: 632 out of 632 bytes
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=UTF-8
< Vary: X-Origin
< Vary: Referer
< Date: Mon, 18 Sep 2017 05:47:24 GMT
< Server: ESF
< Cache-Control: private
< X-XSS-Protection: 1; mode=block
< X-Frame-Options: SAMEORIGIN
< X-Content-Type-Options: nosniff
< Alt-Svc: quic=":443"; ma=2592000; v="39,38,37,35"
< Accept-Ranges: none
< Vary: Origin,Accept-Encoding
< Transfer-Encoding: chunked
< 
{
  "photoId": {
    "id": "CAoSLEFGMVFpcE9Zc0I4U25pWkcwaUFRWk11ZXZ3d3VzVkRaUTFxZlIyWks5VnE2"
  }
}
* Curl_http_done: called premature == 0
* Connection #0 to host streetviewpublish.googleapis.com left intact

2 ответа

Решение

Наконец-то я обнаружил первопричину проблемы. Я скучаю по методу XMP на моей фотографии. Google не проверит и не ответит на ошибку для неправильной мета-фотографии XMP. Поэтому убедитесь, что ваша фотография имеет правильную методу XMP - единственный способ исправить это.

Вы можете попробовать добавить --verbose в конце вашего запроса при вызове шага 2 загрузки фотографии (если вы используете curl). Также вы можете также проверить код ответа, если он равен 200, то все в порядке. Наконец, убедитесь, что вы загружаете правильное изображение 360. Следуйте за этим комментарием, который говорит о метаданных фотосферы и exiftool

Другие вопросы по тегам