Я передаю параметры в виде строки запроса в HttpClient.post с заголовком
'Content-Type': 'application / x-www-form-urlencoded'.
Я проверил много вопросов, ранее заданных в переполнении стека, но не получил успеха.
В сервис.ц
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders,HttpParams } from '@angular/common/http';
import {Observable} from 'rxjs/Observable';
searchPerson(contactNo) {
let header = new HttpHeaders();
header = header.append('Content-Type','application/x-www-form-urlencoded');
let params = new HttpParams();
params =params.set ('grant_type','password');
params =params.set ('username',contactNo);
return this.http.post('Some Url',params,{headers:header });
}
В login.component.ts
import { Component, OnInit } from '@angular/core';
//import {Observable} from 'rxjs/Rx';
import {FactoryService} from '../../services/factory.service';
constructor(private factory: FactoryService) { }
logMeIn(contactNo:string){
this.loading = true;
this.factory.searchPerson(this.contactNo).subscribe(
data=> { console.log(data.token);},
err=> {
this.loading = false;
console.log(err.message);
},
()=>{
this.loading = false;
console.log('Login process done');
}
);
}
исключительная ситуация: Http-ответ об ошибке для URL: 400 неверный запрос