ruby - 如何正确处理此 POSTed 文本文件?
问题描述
我在处理用 ruby 发布的文件时遇到了最困难的时间,并且正在使用邮递员发送请求。请求的标头是:
Content-Type multipart/form-data
身体看起来像:
file crazyfile.txt
在我的 Sinartra 服务器中,我正在执行以下操作:
post '/' do
request.body.rewind
contents = request.body.read.to_s
puts contents
end
输出如下所示:
---------499771616322077848081915
Content-Disposition: form-data; name="file"; filename="crazyfile.txt"
Content-Type: text/plain
holy moly
---------499771616322077848081915
我如何获得只是的输出holy moly
?
解决方案
我相信您可以使用 访问文件名,并通过params[:file][:filename]
访问TempFileparams[:file][:tempfile]
。TempFile 将允许您对其进行操作,就好像它实际上是一个 File 对象一样,因此您可以通过read
方法(例如params[:file][:tempfile].read
)访问内容。
推荐阅读
- firebase - 错误状态:即使字段存在,DocumentSnapshotPlatform 中也不存在字段颤动错误
- sql - android & Sqlite 图像选择性能
- c++ - 使用 OpenNN 开发神经网络:尝试向回归神经网络添加层后程序崩溃
- python - [excel 或 python]:基于包含重复项的公共列比较两个表
- http2 - 在 python 中对 HTTP1.1/HTTP2 进行基准测试
- nuxt.js - 如何使用 vite 动态导入 json 文件
- rest - 选择哪个http客户端
- flutter - Flutter 'samples.json' 不下载示例示例 ID
- android - 自动可调textview改变高度android
- c# - 无法在编排项目名称中使用点 (.)