我有以下網址:
https://amazon-advertising-api-reports-prod-euamazon.s3.amazonaws.com/apj6jra9ng5v4-avp9363n2w589-report-campaign-45f7c968-d7e8-4d8e-a6ef-2b144268ab36.json.gz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20210930T164837Z&X-Amz-SignedHeaders=host&X-Amz-Expires=30&X-Amz-Credential=AKIXXXXXXXXXZ6X/20210930/us-east-1/s3/aws4_request&X-Amz-Signature=2a549XXXXXXXXXX0e61f43166c267eaafedf8
這是來自亞馬遜廣告 API 的原始回應,僅用“X”替換了幾個元素,其中您希望簽名或憑據中包含正常字符。
如果我將此 url 復制并粘貼到瀏覽器中,則可以按預期下載該檔案。嘗試使用以下curl命令的任何變體檢索此檔案時...
curl -o $REPORT_DATA_FILE_GZ "$REPORT_DOWNLOAD_URL\"
or
curl -o $REPORT_DATA_FILE_GZ "\"$REPORT_DOWNLOAD_URL\""
or
curl -o $REPORT_DATA_FILE_GZ $REPORT_DOWNLOAD_URL
...我收到錯誤URL using bad/illegal format or missing URL。但我確定我正在傳遞具有正確值的REPORT_DOWNLOAD_URL和REPORT_DATA_FILE_GZ變數。
我echo在呼叫之前顯示它們curl以確保它們有效。
我也看不到 URL 中任何對我來說無效的字符。
所有對 curl 的請求都是在我在瀏覽器中進行測驗呼叫之前發出的,因此到那時 amazon-advertising-api(30 秒)提供的短暫過期時間不會過期。
根據評論,我在 WSL2 上的 Ubuntu 20.04 下運行它,但大多數其他 curl 請求作業正常。
uj5u.com熱心網友回復:
我終于根據@dave_thompson_085 建議的輸出找到了解決方案。我$REPORT_DOWNLOAD_URL從不同回應的標頭中提取了,它仍然包含\r在最后。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/321196.html
下一篇:在GCP上安裝Citus失敗
