

# API Gateway で WebSocket API のルートレスポンスを設定する
<a name="apigateway-websocket-api-route-response"></a>

WebSocket ルートは、双方向または単方向通信に対して設定できます。ユーザーがルートレスポンスを設定しない限り、API Gateway はルートレスポンスにバックエンドレスポンスを渡しません。

**注記**  
WebSocket API の `$default` ルートレスポンスのみを定義できます。統合レスポンスを使用して、バックエンドサービスからのレスポンスを操作できます。詳細については、「[統合レスポンスの概要](apigateway-websocket-api-integration-responses.md#apigateway-websocket-api-integration-response-overview)」を参照してください。

API Gateway コンソール、AWS CLI、または AWS SDK を使用して、ルートレスポンスとレスポンス選択式を設定できます。

ルートレスポンス選択式の設定の詳細については、「[ルートレスポンス選択式](apigateway-websocket-api-selection-expressions.md#apigateway-websocket-api-route-response-selection-expressions)」を参照してください。

**Topics**
+ [API Gateway コンソールを使用したルートレスポンスの設定](#apigateway-websocket-api-route-response-using-console)
+ [AWS CLI を使用してルートレスポンスを設定する](#apigateway-websocket-api-route-response-using-awscli)

## API Gateway コンソールを使用したルートレスポンスの設定
<a name="apigateway-websocket-api-route-response-using-console"></a>

WebSocket API を作成し、プロキシ Lambda 関数をデフォルトルートにアタッチしたら、API Gateway コンソールを使用してルートレスポンスを設定できます。

1. API Gateway コンソールにサインインし、`$default` ルートの Lambda 関数の統合で WebSocket API を選択します。

1. **[Routes]** (ルート) で、`$default` ルートを選択します。

1. **[双方向通信を有効にする]** を選択します。

1. [**API のデプロイ**] を選択します。

1. API をステージにデプロイします。

 以下の [wscat](https://www.npmjs.com/package/wscat) コマンドを使用して、API に接続します。`wscat` の詳細については、「[`wscat` を使用した WebSocket API への接続とメッセージの送信](apigateway-how-to-call-websocket-api-wscat.md)」を参照してください。

```
wscat -c wss://api-id.execute-api.us-east-2.amazonaws.com/test
```

 Enter ボタンを押して、デフォルトルートを呼び出します。Lambda 関数の本体が戻るはずです。

## AWS CLI を使用してルートレスポンスを設定する
<a name="apigateway-websocket-api-route-response-using-awscli"></a>

次の [create-route-response](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-route-response.html) コマンドは、`$default` ルートのルートレスポンスを作成します。API ID とルート ID は、[get-apis](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/get-apis.html) コマンドと [get-routes](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/get-routes.html) コマンドを使用して特定できます。

```
aws apigatewayv2 create-route-response \
    --api-id aabbccddee \
    --route-id 1122334  \
    --route-response-key '$default'
```

出力は次のようになります。

```
{
    "RouteResponseId": "abcdef",
    "RouteResponseKey": "$default"
}
```