Я пытаюсь вызвать веб-сервис в приложении с ионной 2, но получить между обещаниями и наблюдаемыми. Это моя функция, я звоню по щелчку Button-Использование обещаний с наблюдаемыми в ионных приложениях 2
getUserDetailsIfAccessTokenIsSuccess()
{
this.remedyService.userGetDetail(this.loginDetailsObj.username).subscribe(
data =>{
console.log("userGetDetail Success="+JSON.stringify(data));
},
err =>{
console.log("userGetDetail Success="+JSON.stringify(error));
},
() =>{
console.log("Get Userdetails Completed");
});
}
Теперь я звоню функцию userGetDetail в моем файле службы.
userGetDetail(eid){
var url = '/userGetDetail';
var params = {
'EID':eid
};
console.log(JSON.stringify(params));
var headers = new Headers();
this.createAuthorizationHeader(headers);
this.storage.get('remedyAccessToken').then((value)=>{
var token = value.toString();
console.log("TOKEN IN REMEDYSERVICES="+token);
headers.append('Authorization', token);
console.log("header value inside="+JSON.stringify(headers));
})
console.log("header value outside="+JSON.stringify(headers));
let options = new RequestOptions({ headers: headers });
this.response = this.http.post(url,this.urlEncode(params),options).map(res => res.json());
console.log("Response JSON="+JSON.stringify(this.response));
return this.response;
}
Теперь вопрос заключается в том, что до авторизации становится добавляется в заголовок потока будет следующей строки и веб-API дает ошибку. Есть ли в любом случае, я могу синхронизировать таким образом, что после добавления авторизации происходит только служебный вызов. Я попытался поместить вызов веб-ави, внутри, затем заблокировать, но это заставляет службу звонить как обещание. Любая помощь будет оценена по достоинству.
Я не вижу оператора '' get'' в '' Observable''. http://reactivex.io/documentation/operators.html – raj
обновлен до тех пор, пока метод обещания ... это была ошибка – RHUL
В решении есть дополнительный кронштейн. И отметьте ответ, чтобы он был полезен другим. – raj