Ioni c 4 WordPress аутентификация - PullRequest
0 голосов
/ 18 апреля 2020

Добрый день, Эксперт. Пожалуйста, я новичок в Иони c и angular, и у меня есть небольшое беспокойство, Пожалуйста, помогите мне. Я использую плагины WordPress JWT для аутентификации пользователей в моих приложениях ioni c 4, но проблема в том, что когда пользователь пытается войти в систему в первый раз, он возвращает ноль, с этим сообщением об ошибке -

https://example.com/wp-json/wc/v3/customers/null?consumer_key=ck_xxxxxxxxxxxxxx&consumer_secret=cs_xxxxxxxxxxxxx. –HttpErrorResponse {headers: HttpHeaders, status: 404, statusText: «OK», URL: «https://example.com/wp-json/wc/v3/cu… ecret = cs_xxxxxxxxxxx», ok: false,…} ,

но локальное хранилище возвращает данные и идентификатор клиента с тостом, показывающим успешный вход в систему. Но пользователь пробует это во второй раз, именно тогда пользователь будет аутентифицирован, так что только когда пользователь пробует это дважды, прежде чем он аутентифицируется. Но я хочу, чтобы пользователь прошел аутентификацию после успешного входа в систему

Я не знаю, что я сделал неправильно. Это мой код Спасибо

login.page.ts

loginForm(){

    this.platform.ready().then(() => {

      if((this.password != '') &&  (this.CFS.validateEmail(this.email))) {

        console.log('Email: ',this.email);

        console.log('Password: ',this.password);

        this.auth.loginCustomer(this.email,this.password).then((response) => {

      if(response['token']){

        console.log('Returned Token: ',response['token']);

        console.log('Returned user enamil: ',response['user_email']);

        this.CFS.presentToast('Login successful', 'buttom',2000, 'success');

        this.auth.getUserData(this.email).subscribe((userData) => {

         this.customerData = userData;

          console.log('Customer Data: ', this.customerData);

         let currentUserId = this.customerData[0].id;

         localStorage.setItem('currentUserId', currentUserId);

         let found = localStorage.getItem('currentUserId');

         console.log('local storage id', found);

        });
          this.route.navigateByUrl('/home');
      } else {

        this.CFS.presentToast('Invalid username or password', 'buttom',2000,'danger');
      } 

    });

      } else {

        this.CFS.presentToast('Please fill  the form correctly', 'buttom',2000,'danger')

      }

    });

  }

Home.page.ts

   customerId:any;

   customerData: any = {

    avatar_url: 'not found',

  }

  constructor(private CFS: CommonfunctionService, private activatedRoute: ActivatedRoute, private auth: AuthService, private WC: WoocommerceService, private modalPop: ModalController) {

   }
     ngOnInit() {  
    let isUserLoggedIn =  localStorage.getItem('currentUserId');

    this.WC.getUserInfo(isUserLoggedIn).subscribe((data)=>{

      this.customerData = data;

      console.log('user data', this.customerData);

    }); 

    this.WC.getWalletBalance(isUserLoggedIn).subscribe((data) =>{

      this.mybalance = data;

      console.log('All Orders balance by a customer', this.mybalance);

    });
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...