是否可以从八位字节流中提取文件名?
is it possible to Extract file name from octet stream?
我必须通过 api 发送从 S3 获取的八位字节流。我需要更改收到的文件的名称。
八位位组流是否包含文件名?如果是,如何从八位字节流中提取文件名?如果不是,是否有任何其他方式发送八位字节流并为其附加文件名?
另一种方法是在将文件保存到 S3 之前更改文件名。但我想知道是否可以操纵八位字节流。
import dw::module::Multipart
output multipart/form-data
---
{
parts: {
part1: Multipart::field({name:"data",value: vars.xmlData, mime:"application/xml"}),
part2: Multipart::field({name:"file",value: vars.docAsBytes,mime:"application/octet-stream"})
}
}
编辑:
这对我有用
output multipart/form-data
---
{
parts : {
file : {
headers : {
"Content-Disposition" : {
"name": "file",
"filename": "abcdef.jpeg"
},
"Content-Type" : "image/jpeg",
},
content : vars.base64string
}
}
长话短说:八位字节流不包含任何文件名,除非它是某种结构,只是编码为八位字节流 - 但在大多数情况下,它只是文件的二进制数据。
对于以 multipart/form-data
格式发送文件名,Content-Disposition header 被认为是标准格式。
我必须通过 api 发送从 S3 获取的八位字节流。我需要更改收到的文件的名称。 八位位组流是否包含文件名?如果是,如何从八位字节流中提取文件名?如果不是,是否有任何其他方式发送八位字节流并为其附加文件名?
另一种方法是在将文件保存到 S3 之前更改文件名。但我想知道是否可以操纵八位字节流。
import dw::module::Multipart
output multipart/form-data
---
{
parts: {
part1: Multipart::field({name:"data",value: vars.xmlData, mime:"application/xml"}),
part2: Multipart::field({name:"file",value: vars.docAsBytes,mime:"application/octet-stream"})
}
}
编辑:
这对我有用
output multipart/form-data
---
{
parts : {
file : {
headers : {
"Content-Disposition" : {
"name": "file",
"filename": "abcdef.jpeg"
},
"Content-Type" : "image/jpeg",
},
content : vars.base64string
}
}
长话短说:八位字节流不包含任何文件名,除非它是某种结构,只是编码为八位字节流 - 但在大多数情况下,它只是文件的二进制数据。
对于以 multipart/form-data
格式发送文件名,Content-Disposition header 被认为是标准格式。