Не удается применить правильный метод для аутентификации с использованием API в ионной - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть API для входа в систему, но я новичок в Ionic и не могу выбрать правильный метод входа.

Это мой сервис: поставщики / restapi / restapi.ts

import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';

/*
Generated class for the RestapiProvider provider.
*/
@Injectable()
export class RestapiProvider {

apiUrl = 'http://192.168.1.10/honeybee/register';

constructor(public http: HttpClient) {
console.log('Hello RestapiProvider Provider');
}

getUsers(endpoint: string, body: any, reqOpts?: any) {
return this.http.post(this.apiUrl+'/user_Login' + endpoint, body, reqOpts);
}

}

Это мой login.ts

import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { RestapiProvider } from '../../providers/restapi/restapi';

/**
* Generated class for the LoginpagePage page.
*
* See https://ionicframework.com/docs/components/#navigation for more info. 
* Ionic pages and navigation.
*/

 @IonicPage()
 @Component({
  selector: 'page-loginpage',
  templateUrl: 'loginpage.html',
})
export class LoginpagePage {
 users: any;
 constructor(public navCtrl: NavController, public navParams: NavParams,
  public restProvider: RestapiProvider) {
  this.getloginUsers();
 }

 ionViewDidLoad() {
  console.log('ionViewDidLoad LoginpagePage');
 }

 getloginUsers() {
  this.restProvider.getUsers()
  .then(data => {
    this.users = data;
    console.log(this.users);
   });
  }

}

Я не могу передать параметры в метод getUsers (), потому что я новичок в ionic.Пожалуйста, помогите мне для правильного метода.

1 Ответ

0 голосов
/ 06 декабря 2018

Похоже, в зависимости от вашего провайдера вы используете Angular 4.3+ с HttpClient, который использует Observables.Подробнее о том, как правильно реализовать вызовы, см. Здесь: https://angular.io/guide/http

В вашем случае у вашего провайдера есть метод getUsers ():

getUsers(endpoint: string, body: any, reqOpts?: any) {
    return this.http.post(this.apiUrl+'/user_Login' + endpoint, body, reqOpts);
}

Возвращает Observable, и вам нужноподписаться на него, чтобы заставить его «действовать» (сделать запрос за вас).

Так что в коде вашего компонента у вас должно быть что-то вроде:

getloginUsers() {
  this.restProvider.getUsers().subscribe(
      (data) => {
          this.users = data;
      },
      (error) => { 
          console.log(error);
      })
}

Также ваш метод getUsers требует многоаргументы (конечная точка, тело и т. д.).Пожалуйста, не забудьте передать их;)

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