本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
WebSocket APIs在API閘道中設定路由回應
WebSocket 路由可以設定為雙向或單向通訊。API除非您設置了路由響應,否則 Gateway 不會將後端響應傳遞給路由響應。
注意
您只能定義的$default
路由回應 WebSocket APIs。您可以使用整合回應來操作後端服務的回應。如需詳細資訊,請參閱 整合回應概觀。
您可以使用API閘道主控台或或設定路由回應和回應選取表示式 AWS SDK。 AWS CLI
如需路由回應選擇表達式的詳細資訊,請參閱 路由回應選擇表達式。
使用API閘道主控台設定路由回應
在您建立 Proxy Lambda 函數 WebSocket API並將其附加至預設路由之後,您可以使用API閘道主控台設定路由回應:
-
登入API閘道主控台,在
$default
路由上選擇 WebSocket API具有代理 Lambda 函數整合的項目。 -
在 Routes (路由) 下選擇
$default
路由。 -
選擇啟用雙向通訊。
-
選擇部署API。
-
API將您的部署到階段。
使用下面的 wscatwscat
的相關資訊,請參閱 用wscat於連接到 WebSocket API 並向其發送消息。
wscat -c wss://
api-id
.execute-api.us-east-2
.amazonaws.com/test
按下 Enter 按鈕以呼叫預設路由。您 Lambda 函數的主體應該會傳回。
使用設定路由回應 AWS CLI
若要設定 WebSocket API使用的路由回應 AWS CLI,請呼叫命create-route-response
令,如下列範例所示。您可以通過調用和來識別 ID get-apis
和路由 ID get-routes
。API
aws apigatewayv2 create-route-response \ --api-id
aabbccddee
\ --route-id1122334
\ --route-response-key '$default'
輸出範例:
{ "RouteResponseId": "abcdef", "RouteResponseKey": "$default" }