ionic2 http失败但其他工作

时间:2017-02-20 06:19:53

标签: javascript angularjs angular ionic-framework ionic2

我不知道以下网址无效的原因。我成功地运行了一堆几乎相同的请求,但是这个请求没有到达服务器。它可能是ionic2中的URL长度吗?

let requestURL = 'https://myServer/php/setUserPushInfo.php?user=user&PushToken=fc0112d3936f738d9d4c197c50abf80304ab13fca48b19d539ecacf65ce58b34&OS=iOS&other=value';
this.http.get(requestURL).map(res => {
        console.log(JSON.stringify(res.json()));
        return res.json();
    },
    err => {
        console.log('ERROR ' + err);
    }
);

我的代码中的类似请求一直存在。在浏览器中使用requestURL工作......?还有4个其他php文件同时并成功运行的请求。

2 个答案:

答案 0 :(得分:4)

在Angular 2 / Ionic 2中,如果您使用的是http模块, 只有在一个或多个订阅者订阅时才会发送请求本身。 它使用Observables概念使其有效。

只要有观察者,它就会发送请求并返回响应的observable,稍后将异步返回。 没有任何东西等待响应,就没有必要发送请求。

答案 1 :(得分:0)

试试这样:

let requestURL = 'https://myServer/php/setUserPushInfo.php?user=user&PushToken=fc0112d3936f738d9d4c197c50abf80304ab13fca48b19d539ecacf65ce58b34&OS=iOS&other=value';
this.http.get(requestURL)
.map(res => res.json())
.subscribe(data => {
    console.log("Data is :",data);
    observer.next(data);
},
err => {
    console.log('ERROR ',err);
    observer.error(err);
});

应该工作。