NativeScript Vue发送表单数据请求(多部分/表单数据)
我的应用程序中有一个案例,需要将数据作为表单数据发送到服务器。数据包括消息和可选的文件列表。我面临的问题是,当发送请求时,它的格式不正确 请求有效负载 预期(浏览器中具有相同请求的示例) 实际(在NativeScript中运行时产生的请求) 实际结果是,负载以某种方式被URL编码 代码示例NativeScript Vue发送表单数据请求(多部分/表单数据),nativescript,multipartform-data,binary-data,nativescript-vue,Nativescript,Multipartform Data,Binary Data,Nativescript Vue,我的应用程序中有一个案例,需要将数据作为表单数据发送到服务器。数据包括消息和可选的文件列表。我面临的问题是,当发送请求时,它的格式不正确 请求有效负载 预期(浏览器中具有相同请求的示例) 实际(在NativeScript中运行时产生的请求) 实际结果是,负载以某种方式被URL编码 代码示例 sendData({id,message,files}){ 常量配置={ 标题:{ “内容类型”:“多部分/表单数据” } }; const payload=new FormData(); payload
sendData({id,message,files}){
常量配置={
标题:{
“内容类型”:“多部分/表单数据”
}
};
const payload=new FormData();
payload.append('message',message);
如果(files&&files.length>0){
files.forEach((文件)=>{
payload.append(`files`,file,file.name);
});
}
返回AXIOS_INSTANCE.post(
`/api/save/${id}`,
有效载荷,
配置
);
}
从上面可以看到,我正在使用axios
,并且我正在尝试使用FormData
来格式化数据。根据我的研究,NativeScript过去似乎不支持通过XHR传输的二进制数据,但现在看来,它已经在大约一年前被修复了
所以我怀疑我做错了什么,也许除了使用FormData
,还有其他选择,或者我不应该为这个特定的请求使用axios
版本号
6.8.0nativescript
6.5.3tns android
6.5.3tns ios
var bghttp=require(“nativescript后台http”);
var session=bghttp.session(“图像上传”);
var请求={
url:url,
方法:“张贴”,
标题:{
“内容类型”:“应用程序/八位字节流”
},
描述:“上传”
};
变量参数=[
{name:“test”,value:“value”},
{name:“fileToUpload”,filename:file,mimeType:“image/jpeg”}
];
var task=session.multiportupload(参数,请求);
非常感谢-这非常有效。老实说,我确实看到其他一些帖子提到了这个软件包,但我想看看我是否可以不用它。。但无论如何,它工作得很好:)