繁体   English   中英

Ionic 2使用Laravel 5.4作为后端登录

[英]Ionic 2 login with Laravel 5.4 as backend

我是离子2和laravel 5.4的新手

我正在尝试创建用户的注册,登录和仪表板。 当我尝试创建登录时,它表示tokenMismatchException 现在,我如何将csrf令牌从离子传递到laravel?

这是我在login.ts中的方法

login() {
  var headers = new Headers();
  headers.append("Accept", 'application/json');
  headers.append('Content-Type', 'application/json' );
  let options = new RequestOptions({ headers: headers });

  let data = {
    username: this.username,
    password: this.password,
    // can i pass token here to laravel?
  }

  this.http.post(this.apiUrl + '/api/login', data, options)
    .subscribe(res => {
      console.log(res);
     }, error => {
      console.log(error);// Error getting the data
  });
}

在laravel中的api.php里面的路线

Route::post('login','ApiController@login');

在我的api控制器中

public function login(Request $request) {
    echo json_encode($request->username);
    // how to create login auth here? from ionic 2?
}

问题1: tokenMismatchException

问题2:我不知道如何使用ionic 2和laravel 5.4作为后端创建登录。

这里的任何人都可以给我关于离子2 + laravel 5.4登录auth的资源还是可以解决问题? 谢谢并继续分享您的想法,以帮助程序员:)

我在这里找到了答案https://scotch.io/tutorials/token-based-authentication-for-angularjs-and-laravel-apps

对于像我这样的初学者来说,这可能是一个很好的资源,因为它有一步一步的教程。

我相信你可以做这样的事情。 如果您使用的是离子原生,则需要返回一个唯一的令牌,该令牌将存储在您的应用状态中,以便您可以转到页面。

public function login(Request $request)
    {
        $this->validate($request,[
            'username' => 'required',
            'password' => 'required'
        ]);
        $user = User::where('username', $request->username)
            ->orWhere('email', $request->username)
            ->first();
        if(Hash::check($request->password, $user->password)){
            return $user->toJson(JSON_PRETTY_PRINT);
        }else{
            return "{error: 'true', message: 'wrong login credentials'}";
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM