Google-Cloud-Platform
GAE 標準的“Report-To”HTTP 標頭實現
我正在嘗試向我們的 App Engine 的 app.yaml 配置文件添加一個“Report-To:”HTTP 標頭,以便與https://report-uri.com集成(基於此處、此處和此處的 Reporting API )但是當我將更改推送到儲存庫時,Cloud Build 失敗並返回以下錯誤:
ERROR: (gcloud.app.deploy) An error occurred while parsing file: [/workspace/app.yaml] in "/workspace/app.yaml", line 21, column 27 ERROR ERROR: build step 0 "gcr.io/cloud-builders/gcloud" failed: exit status 1
app.yaml 的第 21 行對應新的標頭:
handlers: - url: / static_files: www/index.html upload: www/index.html secure: always redirect_http_response_code: 301 http_headers: Report-To: {"group":"default","max_age":31536000,"endpoints":[{"url":"https://*REDACTED*.report-uri.com/a/d/g"}],"include_subdomains":true}
我嘗試了不同的標頭迭代,包括以下內容:
handlers: - url: / static_files: www/index.html upload: www/index.html secure: always redirect_http_response_code: 301 http_headers: Report-To: {"max_age":31536000, "url":"https://*REDACTED*.report-uri.com/a/d/g"}
這是唯一在部署時引發錯誤的行項目。如果刪除,新版本將上線。是因為 App Engine 不支持標頭還是我們的語法錯誤?讓我知道是否需要採取任何其他步驟。
必須引用帶有特殊字元的 YAML 字元串。將字元串用單引號括起來,這應該可以解決所有問題。