ionic-framework - 如何使用电容器中的 ionic-native-http 在 Post 请求中传递表单数据?
问题描述
我使用了验证表单来获取用户的输入,并且我有一个提交按钮,在该按钮上调用了 submit() 函数。
insertuserdata() 是调用 api 的 service.ts 文件中的一个函数。我在 api 中传递表单数据。文件(例如 pdf、doc、docx 等)也可以作为多部分表单数据传递给 api。
但我正在使用 Ionic-Native-Http 使用电容器传递多部分表单数据。
我收到状态为 415 的错误。请帮助解决这个问题。
submit()
{
this.isSubmitted = true;
if (!this.ionicForm.valid) {
console.log('Please provide all the required values!')
return false;
} else {
console.log(this.ionicForm.value)
}
console.log("this is deptid", this.deptid)
console.log("this is description", this.ionicForm.controls["description"].value)
console.log("this is cid", this.ionicForm.controls["subquery"].value)
console.log("this is location", this.ionicForm.controls["location"].value)
console.log("query",this.ionicForm.controls["query"].value)
console.log("Insert Form Data")
const formData = new FormData();
formData.append('postedby', this.employeeId);
formData.append('description', this.ionicForm.controls["description"].value);
formData.append('location', this.ionicForm.controls["location"].value);
formData.append('deptid', this.deptid);
formData.append('cid', this.ionicForm.controls["subquery"].value);
formData.append('file', this.ionicForm.get('profile').value);
console.log("Insert Api call")
this.c2s.insertuserdata(formData).then((insertdata: any) =>{
console.log("Insert Response",insertdata)
})
insertuserdata(formData) {
let httpOptions = {
headers: new HttpHeaders({
'enctype': 'multipart/form-data;',
'Content-Type': 'application/json'
})
};
this.insert = this.http1.post("https://webapplnapp.tatapower.com/tpc_restfull_service/api/connecttosolve/postQuery", formData, httpOptions);
return this.insert
}
解决方案
推荐阅读
- amazon-web-services - 为负载均衡器配置 AWS CPU 利用率指标
- javascript - 错误 [ERR_STREAM_DESTROYED]:在运行电子邮件阅读代码时流被破坏后无法调用 write
- linear-programming - 纸浆包中的整数线性程序生成错误
- git - Git 在远程仓库中只看到 master 分支
- r - 循环R中的字符向量
- powershell - 通过 Powershell 将 IIS 应用程序池配置为特定用户 MSA 帐户
- python - 实现逻辑回归“TypeError:fit() 缺少 1 个必需的位置参数:'y'”
- azure - 用于在 Azure AD 中创建目录的 API
- react-native - 当应用程序在后台时在屏幕上显示一个按钮(React Native)
- python - 多个球在一个盒子里移动(2D)