SNS 本地堆栈给出 403 客户端错误:禁止发布消息时出现 url 错误

问题描述

我有一个生产者(rails 应用程序)正在向 SNS 发布消息,我有一个订阅者(另一个 rails 应用程序)到这个主题。使用 localstack SNS 服务,我创建了主题并为此添加一个订阅者。我已经在 docker-compose.yml 文件中配置了所有三个服务(发布者、SNS 和订阅者),如下所示。

version: '3'
services:
  publisher:
    image: publisher
    container_name: publisher
    command: bash -lc "rm -f tmp/pids/server.pid &&  bundle exec rails server -p 2004 -b '0.0.0.0'"
    volumes:
      - C:\Docker\services\publisher:/myapp
    ports:
      - "2004:2004"
    expose:
      - '2004'
    tty: true
  subscriber:
    image: publisher
    container_name: publisher
    command: bash -lc "rm -f tmp/pids/server.pid && bundle exec rails server -p 2005 -b '0.0.0.0'"
    volumes:
      - C:\Docker\services\publisher:/myapp
    ports:
      - "2005:2005"
    expose:
      - '2005'
    tty: true
  localstack:
    image: localstack/localstack:latest
    environment: 
      - AWS_DEFAULT_REGION=us-east-1
      - EDGE_PORT=2007
      - SERVICES=sns,s3
    ports:
      - '2007:2007' 

每当我发布消息时,我都会收到以下错误

localstack.services.sns.sns_listener: Received error on sending SNS message,putting to DLQ (if configured): 403 Client Error:Forbidden for url: http://subscriber:2005/v1/upload

我不知道为什么会出现此错误。如果有人对此有解决方案,请建议如何解决此问题

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)