### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I am running an SNS topic that publishes to a lambda function. The localstack code reads a type byte object from the lambda function invocation payload [here](https://github.com/localstack/localstack/blob/master/localstack/services/sns/publisher.py#L187) and then tries to dump the result into json [here](https://github.com/localstack/localstack/blob/master/localstack/services/sns/publisher.py#L863) which results in the following error:
```
sns_pub_0] l.services.sns.publisher   : Unable to run Lambda function on SNS message: Object of type bytes is not JSON serializable
```

### Expected Behavior

The payload bytes should be converted to a string before being dumped to json. The error should not be thrown.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

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

docker-compose up
(Using the standard docker-compose.yaml)

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

```
awslocal sns publish --message file://sns/message.json --topic-arn arn:aws:sns:us-east-1:000000000000:<topic_name>
```

### Environment

```markdown
- OS: macOS Ventura 13.2.1
- LocalStack: latest
```


### Anything else?

_No response_
sqs_message_attrs = self.create_sqs_message_attributes(
                    subscriber, msg_context.message_attributes
                )
                
                sns_error_to_dead_letter_queue(
                    subscriber, msg_body, str(exc), msg_attrs=sqs_message_attrs
                )
            if "NonExistentQueue" in str(exc):
                LOG.debug("The SQS queue endpoint does not exist anymore")
                
                
                
class HttpTopicPublisher(TopicPublisher):
    """
    The HTTP(S) publisher is responsible for publishing the SNS message to an external HTTP(S) endpoint which subscribed
    to the topic. It will create an HTTP POST request to be sent to the endpoint.
    See https://docs.aws.amazon.com/sns/latest/dg/sns-http-https-endpoint-as-subscriber.html
    """
    def _publish(self, context: SnsPublishContext, subscriber: SnsSubscription):
        message_context = context.message
        message_body = self.prepare_message(message_context, subscriber)
        try:
            message_headers = {
                "Content-Type": "text/plain",
                
                
                "x-amz-sns-message-type": message_context.type,
                "x-amz-sns-message-id": message_context.message_id,
                "x-amz-sns-topic-arn": subscriber["TopicArn"],
                "User-Agent": "Amazon Simple Notification Service Agent",