我如何将大的编码 base64 字符串发送到 rails 服务器 API
How I can send a large encoded base64 string to rails server API
我正在尝试从客户端向服务器发送大的 base64 编码字符串 rails API 然后在服务器端对其进行解码并将文件上传到 S3 或任何其他服务。当我尝试发送大型编码的 base64 字符串时,我遇到了以下错误:
2018-01-12 14:39:51 +0530: HTTP parse error, malformed request (): #<Puma::HttpParserError: HTTP element QUERY_STRING is longer than the (1024 * 10) allowed length (was 53799)>
---
因为 base 64 编码的字符串非常大。我附上截图请看
我正在使用 rails 5.2 beta 和 puma 服务器。如果我需要分享更多信息或更正任何内容,请告诉我
您正在尝试 POST 一个大对象作为查询参数,这不是参数的预期用途。
您需要 post 它作为 multipart/form-data。
有关如何使用 rest-client
gem 执行此操作的示例,请参阅 this Whosebug 问题。
如您所见:What is the maximum possible length of a query string?
有些客户端可能会暗示对查询字符串的限制。
您需要做的是在请求正文中接受此字符串。由于您使用 Postman,您可以执行以下操作:
post with body
Rails 默认情况下将解析这些值的值,并且它将在 @params 哈希上可用。
我正在尝试从客户端向服务器发送大的 base64 编码字符串 rails API 然后在服务器端对其进行解码并将文件上传到 S3 或任何其他服务。当我尝试发送大型编码的 base64 字符串时,我遇到了以下错误:
2018-01-12 14:39:51 +0530: HTTP parse error, malformed request (): #<Puma::HttpParserError: HTTP element QUERY_STRING is longer than the (1024 * 10) allowed length (was 53799)>
---
因为 base 64 编码的字符串非常大。我附上截图请看
我正在使用 rails 5.2 beta 和 puma 服务器。如果我需要分享更多信息或更正任何内容,请告诉我
您正在尝试 POST 一个大对象作为查询参数,这不是参数的预期用途。
您需要 post 它作为 multipart/form-data。
有关如何使用 rest-client
gem 执行此操作的示例,请参阅 this Whosebug 问题。
如您所见:What is the maximum possible length of a query string?
有些客户端可能会暗示对查询字符串的限制。
您需要做的是在请求正文中接受此字符串。由于您使用 Postman,您可以执行以下操作:
post with body
Rails 默认情况下将解析这些值的值,并且它将在 @params 哈希上可用。