Angular 2 Auth data.json不是函数ERROR

时间:2017-06-30 11:34:50

标签: angular ionic2

在Angular 2中,我想使用HTTP登录。 我已满足所有要求,但我遇到页面重定向问题 代码: 对于authservice.ts

 authenticate(usercreds) {
    var creds = "kullaniciAdi=" + usercreds.name + "&sifre=" + usercreds.sifre;
    var dizi = JSON.stringify({
        kullaniciAdi :usercreds.name, sifre:usercreds.sifre
    });    
    return new Promise(resolve => {
        this.http.post(this.url, dizi ).map(res=>res.json()).subscribe(data => {
         if(data==1){
             //console.log("Çalıştı");
             this.storeUserCredentials(data.json().token);
                resolve(true);
         }else{
             //console.log("Çalışmadı");
             resolve(false);
         }

        });
    }); 

并登录.ts

login(usercreds) {
   // this.authservice.authenticate(usercreds);
    this.authservice.authenticate(usercreds).then(data => {
        if(data) {
            this.navCtrl.setRoot(TabsPage);
        }else{
          this.presentToast();
        }
});}

screenshot for error screen

1 个答案:

答案 0 :(得分:0)

你必须像这样实现你的服务逻辑。它应该工作。

authenticate(usercreds) {
    var creds = "kullaniciAdi=" + usercreds.name + "&sifre=" + usercreds.sifre;
    let dizi = JSON.stringify({
        kullaniciAdi :usercreds.name, sifre:usercreds.sifre
    });    
    return new Promise(resolve => {
        return this.http.post(this.serverUrl, JSON.parse(creds)).map((res) => {
          if (res.status != 204) {
            Promise.resolve(res.json());
          } else {
            Promise.resolve(res);
          }
        });
    });
   }