I am learning to call api in ionic for sign in purpose. and I don't know the proper way to call it.
I have tried to call it but it did not success!
signin.ts
import { Component } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';
import { HTTP } from '@ionic-native/http'
@Component({
selector: 'page-sign-in',
templateUrl: 'sign-in.html',
})
export class SignInPage {
private signinUrl:"*someurl*";
email="";
password="";
constructor(public navCtrl: NavController, public navParams: NavParams,
private http:HTTP) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad SignInPage');
}
signinClick(){
this.callSignInApi(this.email,this.password);
}
callSignInApi(email:string,password:string){
console.log('api email',email);
console.log('api pass',password);
let urlSearchParams = new URLSearchParams();
urlSearchParams.append('username', email);
urlSearchParams.append('password', password);
this.http.post(this.signinUrl,urlSearchParams.toString(),{})
.then(data => {
console.log("data status",data.status);
console.log("data data",data.data); // data received by server
console.log("data headers",data.headers);
})
.catch(error => {
console.error("catching error",error);
console.log("error status",error.status);
console.log("error error",error.error); // error message as string
console.log("error headers",error.headers);
});
}
}
Everytime when I click on the button to call the api, It gives me error (but, error is also null). Even I don't know what the error is.
Can anyone guide me how to call api in proper way, and how to pass the parameters in proper way.
import { Http } from '@angular/http';urlSearchParams.toString()is not doing what you need.