本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
HTTP $util.http 中的協助程式
注意
我們現在主要支援 APPSYNC_JS 執行期及其文件。請考慮在此處使用 APPSYNC_JS 執行期及其指南。
此$util.http
公用程式提供可用於管理HTTP請求參數和新增回應標頭的協助程式方法。
-
$util.http.copyHeaders(Map) : Map
-
從地圖複製標頭,而沒有限制的HTTP標頭集。您可以使用此選項將請求標頭轉送至下游HTTP端點。
{ ... "params": { ... "headers": $util.http.copyHeaders($ctx.request.headers), ... }, ... }
$util.http.addResponseHeader(String, Object)
-
新增具有回應名稱 (
String
) 和值 (Object
) 的單一自訂標頭。有下列限制:-
標頭名稱不能與任何現有或受限 AWS 或 AWS AppSync 標頭相符。
-
標頭名稱不能以限制字首開頭,例如
x-amzn-
或x-amz-
。 -
自訂回應標頭的大小不能超過 4 KB。這包括標頭名稱和值。
-
您應該為每個 GraphQL 操作定義每個回應標頭一次。不過,如果您多次定義具有相同名稱的自訂標頭,最近的定義會出現在回應中。無論命名為何,所有標頭都會計入標頭大小限制。
... $util.http.addResponseHeader("itemsCount", 7) $util.http.addResponseHeader("render", $ctx.args.render) ...
-
$util.http.addResponseHeaders(Map)
-
將多個回應標頭新增至來自指定名稱 (
String
) 和值 () 映射的回應Object
。此addResponseHeader(String, Object)
方法列出的相同限制也適用於此方法。... #set($headersMap = {}) $util.qr($headersMap.put("headerInt", 12)) $util.qr($headersMap.put("headerString", "stringValue")) $util.qr($headersMap.put("headerObject", {"field1": 7, "field2": "string"})) $util.http.addResponseHeaders($headersMap) ...