### 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_
# The key and value can be renamed (with their ization config's "name").
            # By default they are called "key" and "value".
            key_name = f"{key_prefix}{i}.{self._getlized_name(shape.key, 'key', node)}"
            value_name = f"{key_prefix}{i}.{self._getlized_name(shape.value, 'value', node)}"
            # We process the key and value individually
            k = self._process_member(request, key_name, shape.key, node)
            ode)
            if k is None or v is None:
                # technically, if one exists but not the other, then that would be an invalid request
                break
            result[k] = v
        n result if len(result) > 0 else None
    def _parse_list(
        self,
        request: HttpRequest,
        shape: ListShape,
        node: dict,
        
    ) -> list:
        """
        Some actions take lists of parameters. These lists are specified using the param.[member.]n notation.
        The "member" is used if the list is not flattened.
        Value
        For example, a list with two elements looks like this:
        - Flattened: &AttributeName.1=first&AttributeName.2=second
        - Non-flattened: &AttributeName.member.1=first&AttributeName.member.2=second
        This function expects an already filtered / processed node. The node dict would therefore look like:
        ::
          {
              "1": "first",