0

У меня проблема, когда я отправляю данные на свой сервер api.Ionic 2 HTTP.post не отправлять данные

Мой сервер api не получил никаких данных, он отправляется из ионного приложения.

Это мои провайдеры api.

import { Injectable } from '@angular/core'; 
import { HTTP } from 'ionic-native'; 
import 'rxjs/add/operator/map'; 


@Injectable() 
export class APIProvider { 

    constructor() {} 

    getProduct(){ 
    return new Promise(resolve => { 
     let header = {"Content-Type": "application/json"} 

     let body = { 
     "data_1": "1234567890123", 
     "data_2": "125615" 
     } 

     HTTP.post('https://ex.com/api/somethig', JSON.stringify(body), header) 
     .then(data => { 
     console.log(data.status); 
     console.log(data.data); // data received by server 
     console.log(data.headers); 
     resolve(data); 
     }) 
     .catch(error => { 
     console.log(error.status); 
     console.log(error.error); // error message as string 
     console.log(error.headers); 
     resolve(error); 
     }); 
    }); 
    } 
} 

В апи сервера (PHP), я стараюсь vardump($_POST);/Но возвращение array(0) {}

консоли журнал

[15:20:15] console.log: 200 
[15:20:15] console.log: array(0) { } 
[15:20:15] console.log: [object Object] 

Информация о системе:

  • Кордова CLI: 6.5.0
  • Ionic Framework Версия: 2 .0.0
  • Ионные CLI Версия: 2.2.1
  • Ионные App Lib Версия: 2.2.0
  • Ионные App Scripts Версия: 1.0.0
  • КСН-Deploy версии: Не установлено
  • КСН-сим версия: Не установлено
  • ОС: MacOS Sierra
  • Узел версия: v6.9.5
  • Xcode версии: Xcode 8.2.1 Сложение версия 8C1002

ответ

0

Ahhhh, я нашел ответ.

Только что изменено "Content-Type": "application/json" до "Content-Type": "application/x-www-form-urlencoded".

0

Попробуйте использовать '@ angular/http'.

import { Http, Headers } from '@angular/http'; 

constructor(public http: Http) {} 
let body = { data_1: "1234567890123", data_2: "125615" }; 

return new Promise((resolve, reject) => { 
    let headers = new Headers(); 
    headers.append('Content-Type', 'application/json'); 
    this.http.post('https://ex.com/api/somethig', JSON.stringify(body), {headers: headers}) 
    .subscribe(res => { 
     resolve(res); 
    }, (err) => { 
     reject(err); 
    }); 
}); 
+0

Он получил 'console.error: Response со статусом: 0 для URL: null' – ThunderBirdsX3