Websocket API Gateway error "No match for output mapping"

0

Hi,

I am having error in $connect route of my Websocket API Gateway. The setup is very simple with no Authorization and Api key requirement. The integration type is a Lambda Function without using Lambda Proxy Integration. The following is the Lambda function:

public class LambdaBasicStreamFunction implements RequestStreamHandler {
@Override
public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {
int letter;
String eventObject = "";

    while ((letter = inputStream.read()) > -1) {  
        char inputChar= (char) letter;  
        eventObject += inputChar;  
    }  

    //Passing a custom response as the output string  
    String response = "{\n" +  
            "    \"statusCode\": 200,\n" +  
            "    \"headers\": {\"Content-Type\": \"application/json\"},\n" +  
            "    \"body\": \"plain text response\"\n" +  
            "}";  
    outputStream.write(response.getBytes());  

    System.out.println("Input-Event: " + eventObject);  
}  

}

When I used wscat to test the connection, I got "error: Unexpected server response: 500". The api execution log says: "Execution failed due to configuration error: No match for output mapping and no default output mapping configured. Endpoint Response Status Code: 200".

Can anyone help me figure out the problem? Thanks in advance.

已提問 5 年前檢視次數 2114 次
1 個回答
1

Never mind. I found once I enable Lambda Proxy Integration, the error goes away.

已回答 5 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南