离子本机HTTP POST未将数据发送到服务器

时间:2018-11-28 03:49:00

标签: cordova ionic-framework ionic-native

我遇到了一些问题。 POST未将数据发送到服务器。 GET工作正常。下面是我的代码:-

post(user){
let bodynow = {
"email_id": "aa@gmsd.sdf",
"mobile":"9978897989",
"first_name": "dfdf",
"last_name": "ghgfh",
"user_title":"MS",
"country_code": "91"
}

const url =
"https://www.allevoyage.com/index.php/hotels_android/update_profile";
this.http.setDataSerializer("json");
this.http
.post(url, bodynow,headers)
.then(data => {
console.log(data,data.url);
})
.catch(err => {
console.log(err);
});
}
  

以下是版本:
  cordova-plugin-advanced-http版本:-2.0.1
  ionic-native / http版本:-4.17.0
  “ cordova-ios”:“ 4.5.5”

当我使用邮递员时,我得到正确的输出,但是当我使用离子本机http时,它没有向服务器发送数据,并且我的状态为200,因此用户不存在。
有人可以帮我解决我哪里出错了

2 个答案:

答案 0 :(得分:0)

尝试将其放在标题“ Content-Type”中:“ application / x-www-form-urlencoded”

答案 1 :(得分:0)

您应该尝试以下操作:

首先导入地图运算符:

import { map } from "rxjs/operators/map";

然后输入以下代码:

var headers = new Headers();
    headers.append('Access-Control-Allow-Origin' , '*'); //your origin
    headers.append('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT'); //optional
    headers.append('Accept','application/json'); //optional
    headers.append('content-type','application/json'); //set your content-type

this.http.post("https://www.allevoyage.com/index.php/hotels_android/update_profile" , bodynow, {headers: headers}).pipe(
      map(res => res.json())
).subscribe(response => {
  console.log("Response: " + response);
});