我正在为这个问题搜索解决方案超过3天而且找不到任何东西..
我有ionic3应用程序和工作宽度Http POST请求。我正在向我的php服务器和geting数据发送请求..
我的数据-api.ts(提供者)
public getNotifications(token){
return this.http.post(this.sharedVars.getApi(),"action=messages/notification&token="+token, this.options
).map(res => res.json());
}
profilePage.ts
notifications() {
this.api.getNotifications(this.user.token).subscribe(
data => {
if(data.err == 0){
this.notifications = data.data;
}
},
err => {
console.log(err);
}
);
}
这是工作函数,点击此功能后输出正确(1)。但在我的服务器上的x动作通知计数将更改为2,3,4等..我想加载此功能不是单击,而是在页面加载。所以,如果this.notifications
有新值,我想要实时更改值(比如firebase)
示例2:
我已在我的data-api.ts(提供商)
中发送消息操作 public sendMessage(token, to, message, attachment){
return this.http.post(this.sharedVars.getApi(),"action=messages/send&token="+token+"&to="+to+"&message="+message+"&attachment="+attachment, this.options
).map(res => res.json());
}
并且还具有获取此消息的功能。
public getActivity(token){
return this.http.post(this.sharedVars.getApi(),"action=messages/getActivity&token="+token, this.options
).map(res => res.json());
}
所以如果我向sendMessage
发帖请求,那么我想听取实时getActivity
操作并在我的页面中加载新消息但不重新加载..就像firebase一样..
我希望这个问题很明确。因为我不是说英语的人并试图寻找解决方案。罐
答案 0 :(得分:0)
使用角度中的单个HTTP请求无法主动侦听直播事件。
但是你可以查看eventSources。 使用角度2+来看这个问题: Creating an RxJS Observable from a (server sent) EventSource