Аутентификация пользователя с использованием Angular 2 и Flask - PullRequest
0 голосов
/ 21 октября 2018

Я подал заявку на вход в систему и регистрацию в Angular 2, но после входа я не могу аутентифицировать пользователя (т.е. проверить, вошел ли пользователь в систему).Я разработал свой бэкэнд в фляге.

Может кто-нибудь помочь, как мне сохранить подлинность пользователя.

login.component.ts:

import { Component,OnInit } from '@angular/core';
import {AuthService} from '../services/auth.service';
import {User} from '../models/user';

@Component({
  selector: 'login',
  templateUrl: `./login.component.html`

})
export class LoginComponent  {
    user: User = new User(); 
    constructor(private auth: AuthService) {}
    onLogin(): void{
        this.auth.login(this.user)
    .then((user) => {
      console.log(user);

    })
    .catch((err) => {
      console.log(err);
    });
    }

auth.service.ts

import { Injectable } from '@angular/core';
import {HttpClient, HttpErrorResponse,HttpHeaders} from '@angular/common/http';
//import 'rxjs/add/operator/toPromise';
import {API_URL} from '../env';
import {map,catchError} from 'rxjs/operators';
import { throwError } from 'rxjs';

@Injectable()
export class AuthService {
  test(): string {
    return 'working';
  }
  constructor(private http: HttpClient) {}
  httpOptions = {
    headers: new HttpHeaders({
      'Content-Type':  'application/json',
      'Authorization': 'my-auth-token'
    })
  };
  private static _handleError(err: Response | any) {
    return throwError(err || 'Error: Unable to complete request.');
  // return "error"
  }
  login(user) : Promise<any>{
      return this.http.post(`${API_URL}/login`,user, this.httpOptions).toPromise()

        catchError(AuthService._handleError)

  }

В моей задней части фляги я реализовал метод входа в систему следующим образом:

@app.route('/login', methods = ['POST'])
def login():
    data1 = request.get_json(force=True)
    mydoc = mycol.find(data1)
    y = None
    for x in mydoc:
        print(x)
        y = x

    if (y == None):
        return jsonify({'error': 'error'})
    else :
        return jsonify({'done':'done'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...