[X] bug report
[ ] feature request

# Detailed description

The AWS API supports Authorization parameters as GET parameters, e.g. here's a GET request to SendMessage on SQS:

```
curl 'http://localhost:4566/000000000000/SomeQueue.fifo?Action=SendMessage&MessageGroupId=Default&MessageDeduplicationId=1615597859837&MessageBody=%7B%22gateway_id%22%3A%20%2204e73c80-3539-499c-92a4-a0b106c2f6ab%22%7D&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210313%2Fus-east-1%2Fsqs%2Faws4_request&X-Amz-Date=20210313T011059Z&X-Amz-Expires=86400000&X-Amz-SignedHeaders=host&X-Amz-Signature=2c652c7bc9a3b75579db3d987d1e6dd056f0ac776c1e1d4ec91e2ce84e5ad3ae'
```

## Expected behavior

Should send the message and return receipt information.

## Actual behavior

Returns...

```
<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName>000000000000</BucketName>
    <RequestID>7a62c49f-347e-4fc4-9331-6e8eEXAMPLE</RequestID>
</Error>
```

try:
        with tempfile.NamedTemporaryFile() as tf:
            tf.write(content)
            tf.flush()
            with zipfile.ZipFile(tf.name, 'r') as zf:
                jar_entries = [e for e in zf.infolist() if e.filename.lower().endswith('.jar')]
                if match_single_jar and len(jar_entries) == 1 and len(zf.infolist()) == 1:
                    return True
                matching_prefix = [e for e in jar_entries if
                    not jar_path_prefix or e.filename.lower().startswith(jar_path_prefix)]
                return len(matching_prefix) > 0
    except Exception:
        return False
def is_jar_archive(content):
    """ Determine whether `content` contains valid zip bytes representing a JAR archive
        that contains at least one *.class file and a META-INF/MANIFEST.MF file. """
    try:
        with tempfile.NamedTemporaryFile() as tf:
            tf.write(content)
            tf.flush()
            with zipfile.ZipFile(tf.name, 'r') as zf:
                class_files = [e for e in zf.infolist() if e.filename.endswith('.class')]
                manifest_file = [e for e in zf.infolist() if e.filename.upper() == 'META-INF/MANIFEST.MF']
                if not class_files or not manifest_file:
                    return False
    except Exception:
        return False
    return True
def is_root():