### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Given the following javascript lambda function
```javascript
exports.main = async (event) => {
  console.log('Hello World');
  return {
    statusCode: '302',
    body: {},
    headers: {
      Location: 'https://example.com'
    }
  };
}
```

When deploying to local stack and adding a function url, the url returns the correct `body` and `headers` but it will return a 200 status code.

In a real aws environment, an actual 302 is returned.

### Expected Behavior

The correct status code is returned

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

My docker compose file

```yaml
version: '3.4'
services:
  localstack:
    image: localstack/localstack:2.0.2
    environment:
      - SERVICES=dynamodb,lambda
    ports:
      - '4566:4566'
    expose:
      - '4566'
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
```

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

deploying using terraform

```hcl
data "aws_iam_policy_document" "assume_role" {
  statement {
    effect = "Allow"

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }

    actions = ["sts:AssumeRole"]
  }
}

resource "aws_iam_role" "iam_for_lambda" {
  name               = "iam_for_lambda"
  assume_role_policy = data.aws_iam_policy_document.assume_role.json
}

data "archive_file" "lambda" {
  type        = "zip"
  source_file = "../index.js"
  output_path = local.archive_file
}

resource "aws_lambda_function" "redirect_lambda" {
  filename      = local.archive_file
  function_name = "redirects"
  role          = aws_iam_role.iam_for_lambda.arn
  handler       = "index.main"

  source_code_hash = data.archive_file.lambda.output_base64sha256

  runtime = "nodejs18.x"

  environment {
    variables = {
      foo = "bar"
    }
  }
}

resource "aws_lambda_function_url" "lambda_url" {
  function_name      = aws_lambda_function.redirect_lambda.function_name
  authorization_type = "NONE"
}
```


### Environment

```markdown
- OS: docker
- LocalStack: latest
```


### Anything else?

_No response_
import random
import re
import string
import threading
import time
from concurrent.futures import ThreadPoolExecutor
from io import BytesIO
from typing import Dict, TypeVar
import pytest
from botocore.config import Config
from botocore.response import StreamingBody
from localstack import config
from localstack.aws.api.lambda_ import Architecture, Runtime
from localstack.aws.connect import ServiceLevelClientFactory
from localstack.services.lambda_.runtimes import RUNTIMES_AGGREGATED
from localstack.testing.aws.lambda_utils import (
    concurrency_update_done,
    get_invoke_init_type,
    update_done,
)
from localstack.testing.aws.util import create_client_with_keys, is_aws_cloud
from localstack.testing.pytest import markers
from localstack.testing.pytest.snapshot import is_aws
from localstack.testing.snapshots.transformer import KeyValueBasedTransformer
from localstack.testing.snapshots.transformer_utility import PATTERN_UUID
from localstack.utils import files, platform, testutil
from localstack.utils.aws import arns
from localstack.utils.aws.arns import lambda_function_name
from localstack.utils.files import load_file
from localstack.utils.http import safe_requests