AWS AppSync JavaScript 的解析器函數參考 HTTP - AWS AppSync

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS AppSync JavaScript 的解析器函數參考 HTTP

AWS AppSync HTTP 解析器函數可讓您將請求從 AWS AppSync 傳送至任何HTTP端點,並將HTTP端點的回應傳回 AWS AppSync。使用請求處理常式,您可以向 提供 AWS AppSync 關於要叫用之操作性質的提示。本節說明支援HTTP解析器的不同組態。

請求

type HTTPRequest = { method: 'PUT' | 'POST' | 'GET' | 'DELETE' | 'PATCH'; params?: { query?: { [key: string]: any }; headers?: { [key: string]: string }; body?: any; }; resourcePath: string; };

下列程式碼片段是具有text/plain內文的HTTPPOST請求範例:

export function request(ctx) { return { method: 'POST', params: { headers: { 'Content-Type': 'text/plain' }, body: 'this is an example of text body', }, resourcePath: '/', }; }

方法

注意

這僅適用於請求處理常式。

HTTP AWS AppSync 傳送至HTTP端點的方法或動詞 (GET、PATCH、、 POST PUT或 DELETE)。

"method": "PUT"

ResourcePath

注意

這僅適用於請求處理常式。

您要存取的資源路徑。除了HTTP資料來源中的端點之外,資源路徑還會形成 AWS AppSync 服務向其提出請求URL的 。

"resourcePath": "/v1/users"

評估請求時,此路徑會作為HTTP請求的一部分傳送,包括HTTP端點。例如,之前的範例可轉譯如下:

PUT <endpoint>/v1/users

參數欄位

注意

這僅適用於請求處理常式。

用於指定您的搜尋執行的動作,最常透過在內文 中設定查詢值。不過,有多項其他功能可設定,例如回應的格式。

標頭

標頭資訊,以金鑰值對形式。金鑰與值皆必須為字串。

例如:

"headers" : { "Content-Type" : "application/json" }

目前支援的 Content-Type 標頭包括:

text/* application/xml application/json application/soap+xml application/x-amz-json-1.0 application/x-amz-json-1.1 application/vnd.api+json application/x-ndjson

您無法設定下列HTTP標頭:

HOST CONNECTION USER-AGENT EXPECTATION TRANSFER_ENCODING CONTENT_LENGTH
query

指定常見選項的鍵值對,例如JSON回應的程式碼格式。金鑰與值皆必須為字串。以下範例顯示如何傳送 ?type=json 查詢字串:

"query" : { "type" : "json" }
本文

內文包含您選擇要設定的HTTP請求內文。除非內容類型指定字元集,否則請求內文一律為 UTF-8 編碼字串。

"body":"body string"

回應

請見此處範例。