Я читал ранее, что это более безопасно, если вы добавляете заголовок responseType: "json"
к вашим запросам http, поэтому я хотел бы добавить его.
Однако, когда я его использую, при обработке ответа я получаю ошибкукак JSON (то есть с точечной нотацией).
Например, когда я пытаюсь получить свойство ответа json следующим образом: res.responseStatus
, выдается ошибка:
"Property 'responseStatus' does not exist on type 'Object'."
Если я извлекаю заголовок responseType: "json"
из запроса http, я не получаю сообщение об ошибке.
Если я укажу в заголовке responseType
, я смогу получить свойства объекта в ответе в следующей записи: res["responseStatus"]
, и это не приведет к ошибке.Мне просто интересно, если кто-нибудь знает почему.Может быть, я что-то упускаю.
Спасибо
Http пост-запрос кода (из ионного приложения-angular 5)
login(loginData): Observable<any>{
return this.http.post("http://localhost/api/auth",
{"emailAddress": loginData.emailAddress, "password": loginData.password},
{"headers": { "Content-Type": "application/json;charset=utf-8"}, responseType: "json"})
.map(res => {
if(res.responseStatus === "success"){
//Throwing error: "Property 'responseStatus' does not exist on type 'Object'."
//but If I say res["responseStatus"] instead this does not throw error.
//Or If I take out the responseType header, I can use the dot notation.
}
return res;
});
}