<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

# Type of request: This is a bug

[ X ] bug report
[ ] feature request

# Detailed description

It seems there is a bug in the value of the `httpMethod` in the request that is sent to lambda from the API Gateway.

Given the following terraform description the API gateway no matter what the method called passes httpMethod as "POST" and not the method used to make the request to the API gateway, it only gets passed through if the `integration_http_method` is changed to `ANY`, but this is not compatible with what AWS expects.

The `intergration_http_method` is the method that will be used to make the HTTP request to the backend service, not the method that will be reported in the `httpMethod` field.

## Expected behavior
The API Gateway invokes the lambda with the field httpMethod set to the HTTP method that was used to invoke the API Gateway


## Actual behavior
The API Gateway invokes the lambda with the field httpMethod set to the HTTP method that was used to invoke the lambda.


# Steps to reproduce

Create a lambda that is invoked via the api Gateway on a `GET` request, check the `httpHeaders` field.

## Command used to start LocalStack

`docker-compose up`

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)

```
resource "aws_api_gateway_resource" "proxy" {
   rest_api_id = aws_api_gateway_rest_api.test.id
   parent_id   = aws_api_gateway_rest_api.test.root_resource_id
   path_part   = "{proxy+}"
}
resource "aws_api_gateway_method" "proxy" {
   rest_api_id   = aws_api_gateway_rest_api.test.id
   resource_id   = aws_api_gateway_resource.proxy.id
   http_method   = "ALL"
   authorization = "NONE"
}

resource "aws_api_gateway_integration" "lambda" {
   rest_api_id = aws_api_gateway_rest_api.test.id
   resource_id = aws_api_gateway_method.proxy.resource_id
   http_method = aws_api_gateway_method.proxy.http_method
   # Bug in localstack seems to mean that the API gateway passes the integration method as the httpMethod
   integration_http_method = "POST"
   type                    = "AWS_PROXY"
   uri                     = aws_lambda_function.tests_v2.invoke_arn
}
```

I hope this is enough detail, if not I should be able to make a terraform file and a small lambda application to demonstrate the issue.

I think the issue is this line, that should be `'httpMethod': method,` using the method that is passed in from the top of the function

https://github.com/localstack/localstack/blob/bc5fabf870b0af6060875b8d07396b4dbce6adc8/localstack/services/apigateway/apigateway_listener.py#L282


def forward_request(self, **kwargs):
                response = Response()
                response.status_code = 200
                result = {
                    'data': kwargs.get('data') or '{}',
                    'headers': dict(kwargs.get('headers'))
                }
                response._content = json.dumps(json_safe(result))
                return response
        proxy = GenericProxy(test_port, update_listener=TestListener())
        proxy.start()
        return proxy
    @staticmethod
    def create_api_gateway_and_deploy(response_template, is_api_key_required=False):
        apigw_client = aws_stack.connect_to_service('apigateway')
        response = apigw_client.create_rest_api(name='my_api', description='this is my api')
        api_id = response['id']