我正在尝试使用 symfony 5 SQS 消费者使用来自 SQS 的消息,并且当 aws 密钥包含特殊字符(如+
or )时出现问题\
。
这是我的.env
文件:
MESSENGER_TRANSPORT_DSN="https://sqs.eu-west-3.amazonaws.com/XXXXXXXX/bonobo-asg?access_key=XXXX&secret_key=XXXX+XXXXX\XXXXXX®ion=eu-west-3&auto_setup=false"
还有我的messenger.yml
配置文件:
framework:
messenger:
transports:
asg:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
serializer: App\Messenger\SnsSerializer
当我启动消费者时,我收到以下错误:
[AsyncAws\Core\Exception\Http\ClientException (403)]
HTTP 403 returned for "https://sqs.eu-west-3.amazonaws.com/".
Code: SignatureDoesNotMatch
Message: The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for de
tails.
我认为它来自密钥中的特殊字符,因为当我尝试使用另一个只包含字母和数字的密钥时,它工作正常。
我试图逃避特殊字符,\
但它给了我同样的错误。
如何将包含特殊字符的密钥与 symfony sqs 消费者一起使用?