

# API Gateway에서 WebSocket API 생성
<a name="apigateway-websocket-api-create-empty-api"></a>

AWS CLI [create-api](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-api.html) 명령을 사용하거나 AWS SDK에서 `CreateApi` 명령을 사용하면 API Gateway 콘솔에서 WebSocket API를 생성할 수 있습니다. 다음 절차는 새 WebSocket API를 생성하는 방법을 보여줍니다.

**참고**  
WebSocket API는 TLS 1.2 및 TLS 1.3만 지원합니다. 이전 버전의 TLS는 지원되지 않습니다.

## AWS CLI 명령을 사용하여 WebSocket API 생성
<a name="apigateway-websocket-api-create-using-awscli"></a>

다음 [create-api](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-api.html) 명령은 `$request.body.action` 경로 선택 표현식을 사용하여 API를 생성합니다.

```
aws apigatewayv2 --region us-east-1 create-api --name "myWebSocketApi3" --protocol-type WEBSOCKET --route-selection-expression '$request.body.action'
```

출력은 다음과 같습니다.

```
{
    "ApiKeySelectionExpression": "$request.header.x-api-key",
    "Name": "myWebSocketApi3",
    "CreatedDate": "2018-11-15T06:23:51Z",
    "ProtocolType": "WEBSOCKET",
    "RouteSelectionExpression": "'$request.body.action'",
    "ApiId": "aabbccddee"
}
```

## API Gateway 콘솔을 사용하여 WebSocket API 생성
<a name="apigateway-websocket-api-create-using-console"></a>

콘솔에서 WebSocket 프로토콜을 선택하고 API에 이름을 지정하여 WebSocket API를 만들 수 있습니다.

**중요**  
API를 생성한 후에는 선택한 프로토콜을 변경할 수 없습니다. WebSocket API를 REST API로 또는 그 반대로 변환할 수는 없습니다.

**API Gateway 콘솔을 사용하여 WebSocket API를 생성하려면**

1. API Gateway 콘솔에 로그인하고 **API 생성**을 선택합니다.

1. **WebSocket API**에서 **빌드**를 선택합니다. 리전 엔드포인트만 지원됩니다.

1. **API 이름**에 API의 이름을 입력합니다.

1. **라우팅 선택 표현식**에 값을 입력합니다. 예를 들어 `$request.body.action`입니다.

   라우팅 선택 표현식에 대한 자세한 내용은 [라우팅 선택 표현식](websocket-api-develop-routes.md#apigateway-websocket-api-route-selection-expressions) 단원을 참조하십시오.

1. 다음 중 하나를 수행하세요.
   + 라우팅이 없는 API를 생성하려면 **빈 API 생성**을 선택합니다.
   + **다음**을 선택하여 API에 라우팅을 연결합니다.

   API를 생성한 후 라우팅을 연결할 수 있습니다.