09/11/2018, 17:44

Tìm hiểu về Auth

Laravel giúp cho việc thực hiện việc xác thực vô cùng đơn giản. Trong thực tế, hầu hết mọi thứ đã được cấu hình cho bạn mà bạn chỉ việc dùng. File cấu hình xác thực được đặt tại config/auth.php bao gồm một số hướng dẫn tùy biến rõ ràng cho việc tùy biến cách xử lí của các dịch vụ authentication.

Laravel giúp cho việc thực hiện việc xác thực vô cùng đơn giản. Trong thực tế, hầu hết mọi thứ đã được cấu hình cho bạn mà bạn chỉ việc dùng. File cấu hình xác thực được đặt tại config/auth.php bao gồm một số hướng dẫn tùy biến rõ ràng cho việc tùy biến cách xử lí của các dịch vụ authentication.

Ví dụ về Auth

 

Ví dụ cho thấy có Auth thì chúng ta sẽ giảm bớt được code truy vấn và nó sẽ xử lý tất cả cho chúng ta

2.Các hàm trong Auth

Để sử dụng Auth ta phải thêm thư viện

use Illuminate\Support\Facades\Auth;
Phương Thức Chức Năng
attempt(array()) Đăng nhập với thông tin đăng nhập
login(model) Đăng nhập với đối tượng
logout() Hủy đăng nhập
user() Lấy thông tin người đăng nhập
check() Kiểm tra đăng nhập chưa

Ví Dụ

use Illuminate\Support\Facades\Auth;
use Auth;

public function login(Request $request)
		{
			$username = $request['username'];
			$password = $request['password'];
			if (Auth::attempt(['username' => $username,'password' => $password])) {
				return redirect()->route('admin.index')->with('success','Chao mung');
			}else{
				return redirect()->back()->with('error','That bai');
			}
		}

 

public function login(Request $request)
		{
			$username = $request['username'];
			$password = $request['password'];
			if (Auth::attempt([$username,$password])) {
				return redirect()->route('admin.index')->with('user' => Auth::user());
			}else{
				return redirect()->back()->with('erro','That bai');
			}
		}

Auth::login()

use App\Models\User;

public function login(Request $request)
		{
			$username = $request['username'];
			$password = $request['password'];
			$user = User::find(2);
			Auth::login($user);
			return redirect()->route('admin.index')->with('success','Chao mung');
			//Khi dùng hàm login thì nó sẽ mặc định vào id user mà t viết
			// if (Auth::attempt([$username,$password])) {
			// 	return redirect()->route('admin.index')->with('success','Chao mung');
			// }else{
			// 	return redirect()->back()->with('erro','That bai');
			// }
		}

Loguot

public function logout(){
			Auth::logout();
			return redirect()->route('admin.login')->with('info','Thoát Thành Công');
		}

view login

<form action="" method="POST" role="form">
  <legend>Login</legend>

  <div class="form-group">
    <label for="">label</label>
    <input type="text" class="form-control" name="username" placeholder="Input field">
  </div>
  <div class="form-group">
    <label for="">label</label>
    <input type="text" class="form-control" name="password" placeholder="Input field">
  </div>
  <button type="submit" class="btn btn-primary">Submit</button>
</form>

view khi đăng nhập thành công

@if(isset($user))
  @if(Session::has('success'))
  <div class="alert alert-danger">
        <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
    @endif
@endif

Route

Route::get('/login',[
		'uses' => '\App\Http\Controllers\admin\AuthController@index',
		'as' => 'admin.login'
	]);
Route::post('/login',[
		'uses' => '\App\Http\Controllers\admin\AuthController@login',
		'as' => 'admin.login'
	]);
Route::get('/logout',[
	'uses' => '\App\Http\Controllers\FrontendController@logout',
	'as' => 'home.logout'
]);

 

Bài liên quan

Tìm hiểu về Auth

Laravel giúp cho việc thực hiện việc xác thực vô cùng đơn giản. Trong thực tế, hầu hết mọi thứ đã được cấu hình cho bạn mà bạn chỉ việc dùng. File cấu hình xác thực được đặt tại config/auth.php bao gồm một số hướng dẫn tùy biến rõ ràng cho việc tùy biến cách xử lí của các dịch vụ authentication.

Bui Anh Tu viết 1 tuần trước

Tìm hiểu về Lambda

Lambda là: 1 function mà nó không có tên cụ thể. nó có thể sử dụng để gán 1 đoạn code như 1 variable nó cũng là 1 object return về 1 value giống như những function bình thường khác Cách viết của Lambda: Có 2 cách để viết 1 lambda lambda -> Ruby dùng { } để viết ...

Hoàng Hải Đăng viết 21:15 ngày 11/08/2018

Tìm hiểu về sự khác nhau giữa eql? và equal? trong Ruby

Tìm hiểu về sự khác nhau giữa eql? và equal? trong Ruby Tiếp nối bài viết Bạn biết gì về toán tử "===" triple equals (case equality operator) trong Ruby? , ở bài viết này mình sẽ giải thích rõ hơn về sự khác nhau giữa eql? và equal? trong Ruby. Các bạn có thể đọc lại Bạn biết gì về toán ...

Trịnh Tiến Mạnh viết 21:12 ngày 11/08/2018

ReactJS - Tìm hiểu về Component Life Cycle

Trong bài này chúng ta sẽ tìm hiểu về vòng đời của một React component và các methods để quản lý vòng đời này. Lifecycle Methods componentWillMount đây là method sẽ được thực thi trước khi 1 component được render trên cả server side và client side. componentDidMount ...

Trịnh Tiến Mạnh viết 20:42 ngày 11/08/2018

TÌM HIỂU VỀ JSON TRONG JAVASCRIPT

Cách đây khoảng 3 - 4 năm, khi đang học về lập trình Android, tôi đã bắt đầu được tiếp xúc với JSON. Gần đây, tôi mới biết nguồn gốc của nó lại liên quan đến JavaScript - khi tôi bắt đầu học ngôn ngữ này. Vậy JSON là gì? Nó có tác dụng gì ? Và cách sử dụng nó như thế nào? Sau đây, chúng ta sẽ cùng ...

Bùi Văn Nam viết 20:31 ngày 11/08/2018
+1