amazon-web-services - AWS Api Gateway作为HTTP代理正在破坏二

我有一个ruby on rails应用程序,该应用程序获取一个图像文件,“将其附加到成员”,然后将其上传到s3。当我将失眠和POST直接用于应用程序... 时,它可以工作,但是,当我在AWS Api Gateway后面使用完全相同的终端节点时,该图像已损坏且无法查看。

这是请求的比较。

  • LEFT =直接发布到Rails应用程序
  • RIGHT =通过api网关

  • https://www.diffchecker.com/wwUmpB5W

    我注意到的是,回形针gem正在运行不同的命令。很明显,回形针意识到通过API网关传递文件时,该文件不是图像。

    以下是一些可能相关的屏幕快照





    这是rails代码:
    def create
      logger.info 'upload_attachment_api_general_v1'
      logger.info params
      logger.info request.env
      @file = current_merchant.members.find(params[:member_id]).attachments.new(file: params[:file], label: params[:label])
      if params[:file] && @file.save
        render json: @file
      else
        render json: @file.errors, status: :unprocessable_entity
      end
    end
    

    最佳答案

    我想到了。内容类型不是image/png ...内容类型是multipart/form-data

    关于amazon-web-services - AWS Api Gateway作为HTTP代理正在破坏二进制上传的图像文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52725317/

    相关文章:

    scala - scala 中的 RESTful http DELETE 方法(玩 2.0)

    amazon-web-services - AWS EKS 添加受限于命名空间的用户

    html - ng服务一次时如何防止自动重新加载页面?

    spring - 在 Spring RestTemplate 中设置 Authorization h

    xcode - 如何解决错误 'app' 的配置设置冲突。 "app"已自动签名,

    xpages - 适用于 Domino Designer V10 的 Openntf Domino

    twitter-bootstrap - Bootstrap 4 导航栏,带有品牌中心和左侧、中心和右

    fonts - Webstorm with Java 1.8,字体粗细改变

    java-8 - 坚持使用 Java 8 流

    正则表达式 - 反向引用 - 单词定界符?