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.