### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

There is an issue with `get-object-attributes` command which results in below error always: 
`aws --endpoint-url=http://localhost:4566 s3api get-object-attributes --bucket s3mock --key 20.txt --object-attributes "ObjectSize"`
````

> Response:  Unable to parse response (syntax error: line 1, column 0), invalid XML received. Further retries may succeed:
b'98\n5\n'
````

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### Using docker-compse.yaml to start localstack

docker-compse.yaml:

```
localstack:
    image: localstack/localstack:latest
    ports:
      - '4563-4599:4563-4599'
      - '8055:8080'
    environment:
      - SERVICES=s3
      - DEBUG=1
      - LS_LOG=error
      - DATA_DIR=/tmp/localstack/data
      - AWS_DEFAULT_REGION=eu-west-1
      # - EDGE_PORT=4566
    volumes:
      - "./.localstack:/tmp/localstack"
      - "/var/run/docker.sock:/var/run/docker.sock"
```

#### cli commands to reproduce the issue

1. Create a Bucket: `aws --endpoint-url=http://localhost:4566 s3 mb s3://s3mock`
2. Create an Object: `aws --endpoint-url=http://localhost:4566 s3 cp data/20.txt s3://s3mock`

File 20.txt content are 2-digit numbers separated by newline.

3. get-object-attributes for object 20.txt :
```

 aws --endpoint-url=http://localhost:4566 s3api get-object-attributes --bucket s3mock --key 20.txt --object-attributes "ObjectSize"

```
Results in error:

> Unable to parse response (syntax error: line 1, column 0), invalid XML received. Further retries may succeed:
b'98\n5\n'



### Environment

```markdown
- OS:Mac 12.x
- LocalStack:latest
- Node 14
```


### Anything else?

_No response_
self, request: HttpRequest, shape: Shape, uri_params: Mapping[str, Any] = None
    ) -> Any:
        # The json.loads() gives us the primitive JSON types, but we need to traverse the parsed JSON data to convert
        # to richer types (blobs, timestamps, etc.)
        parsed_json = self._parse_body_as_json(request)
        n self._parse_shape(request, shape, parsed_json, uri_params)
class RestJSONRequesr(BaseRestRequesr, BaseJSONRequesr):
    """
    The ``RestJSONRequesr`` is responsible for parsing incoming requests for services which use the ``rest-json``
    protocol.
    The requests for these services encode the majority of their parameters as JSON in the request body.
    The operation is defined by the HTTP method and the path suffix.
    **Experimental:** This parser is still experimental.
    When implementing services with this parser, some edge cases might not work out-of-the-box.
    """
    def _initial_body_parse(self, request: HttpRequest) -> dict:
        
    e_event_stream(self, request: HttpRequest, shape: Shape) -> Any:
        raise NotImplementedError
class EC2Requesr(QueryRequesr):
    """
    The ``EC2Requesr`` is responsible for parsing incoming requests for services which use the ``ec2``
    protocol (which only is EC2). Protocol is quite similar to the ``query`` protocol with some small differences.
    **Experimental:** This parser is still experimental.
    When implementing services with this parser, some edge cases might not work out-of-the-box.
    """
    def _getlized_name(self, shape: Shape, defame: str, node: dict) -> str:
        # Returns the ized name for the shape if it exists.
        # Otherwise it will n the passed in defame.
        if "queryName" in shape.ization: