2017-07-26 18 views
-1

iがCSRFに失敗しました。イオン2 CSRFが失敗しました。

リソースの読み込みに失敗しました:サーバは、(禁止)403の状態で応答

応答 _body:「{」詳細「:」CSRF失敗しない:失敗チェックリファラ - ないリファラーを「}」 ヘッダ:ヘッダ OK:偽 状況:403 STATUSTEXT: "禁断" タイプ:2 URL: "https://deneme.com/api/v1.0/channels/"

私のコード。

uyegiris() 
{ 
    var veri,kullaniciveri; 
    this.deneme=2; 
    var headers = new Headers(); 
    headers.append('Accept', 'application/json'); 
    headers.append('Content-Type', 'application/x-www-form-urlencoded'); 
    //headers.append('Authorization' , 'Basic '+ btoa(tok)); 
    let options = new RequestOptions({ headers: headers }); 

    let postParams = { 
     username: this.user['usernameil'], 
     password:this.user['password'], 
    } 

     this.http.post("https://deneme.com/api/v1.0/users/login/", postParams, options).timeout(2000) 
     .subscribe(data => { 
     veri = data['_body']; 
     veri= veri.slice(1, -1); 
     veri = veri.replace(/\\/g, ""); 
     veri = JSON.parse(veri); 
     console.log(veri); 
     if(veri.msg_err) 
      { 
     let alert = this.alertCtrl.create({ 
     title: 'Giriş Hatası', 
     subTitle: veri.msg_err, 
     buttons: ['Tamam'] 
     }); 
     alert.present(); 
     } 
     else 
      { 
      this.kanallistele(); 
      } 
     }, error => { 
     console.log(error); 
     this.deneme=error; 
     }); 
} 

kanallistele() 
{ 
var veri; 
    this.kanallardiv=true; 
    this.uyegirisdiv=false; 
    this.kanallistelebtn = false; 
    this.kanallistelebtn2 = false; 
    var headers = new Headers(); 
    headers.append('Accept', 'application/json'); 
    headers.append('Content-Type', 'application/json'); 
    //headers.append('Authorization' , 'Basic '+ btoa(tok)); 
    let options = new RequestOptions({ headers: headers }); 

    let postParams = { 
    token: "381f13d7056-ce5fe474919", 
    user_id: "71", 
    } 
    var veris="channel_name_"; 
    this.http2.post("https://deneme.com/api/v1.0/channels/", postParams, options) 
     .subscribe(data => { 
     veri = data['_body']; 
     console.log(veri);  
     veri= veri.slice(1, -1); 
     veri = veri.replace(/\\/g, ""); 
     veri = JSON.parse(veri); 
     for(var i = 0 ;;i++) 
      { 
       if(!veri.channel_list['channel_name_' + (i)]) 
        break; 

       this.veriler.push({channelname: veri.channel_list['channel_name_' + (i)],channelid: veri.channel_list['channel_id_' + (i)]});    
      } 
     }, error => { 
     console.log(error); 
     this.deneme=error;// Error getting the data 
     }); 
    } 

答えて

1

これはIonicとは関係ありません。あなたの要求に応答するためにあなたのサーバ/バックエンド/何かにCSRFトークンが必要で、あなたがそれらを添付していないように見えます。あなたのバックエンドチームに連絡して、あなたの要求に欠けているトークンを追加する必要があります

+0

しかし私のプロジェクトではブラウザにエラーが表示されませんが、私はアンドロイドデバイスでエラーが出るようにします。 –

+0

ほとんどの場合、ブラウザにはリクエストとともに自動的に送信され、それらのトークンを含むCookieがいくつかあります。とにかくあなたのバックエンドにあるのですが、ここにはIonicは理由がありません – smnbbrv

関連する問題