Hộ chiếu đăng nhập nodejs
Hộ chiếu là một thư viện nhằm mục đích làm cho mã xác thực và ủy quyền nhỏ hơn và dễ xử lý. Nó tương thích nhanh và hoạt động hoàn hảo như một phần mềm trung gian xác thực cho các ứng dụng nodeJS Làm thế nào để sử dụng nó Mục đích của Hộ chiếu về cơ bản là xử lý các yêu cầu ủy quyền/xác thực, mang lại cho nhà phát triển sự tự do và linh hoạt trên bất kỳ logic nào để xác thực người dùng, tuyến đường hoặc lược đồ cơ sở dữ liệu Với Hộ chiếu, bạn có thể chỉ định các cách xác thực yêu cầu khác nhau, được gọi là Chiến lược. Các chiến lược có thể đi từ xác minh thông tin đăng nhập bên trong ngữ cảnh ứng dụng của bạn đến thậm chí ủy quyền xác thực cho các dịch vụ bên ngoài bằng OAuth hoặc OpenId Ví dụ Chúng tôi sẽ tạo một ứng dụng nodejs đơn giản và viết một số mã để xác thực người dùng bằng Spotify OAuth Trước tiên hãy tạo cấu trúc thư mục cho ứng dụng. Tạo một thư mục có tên là simplexAuthExampleApp. Tạo một tệp có tên gói. json với nội dung sau
Chạy cài đặt npm
Đây là hướng dẫn ủy quyền Spotify https. // nhà phát triển. spotify. com/documentation/General/guides/authorization-guide/ để hiểu thêm về cách thức hoạt động của nó Những gì bạn cần làm là tạo một tài khoản và làm theo các bước để thiết lập ứng dụng, nhận clientId, clientSecret và cuối cùng là định cấu hình redirectUri
Hãy thêm mã để làm cho ứng dụng của chúng tôi yêu cầu cấp quyền truy cập dữ liệu từ dịch vụ tài khoản Spotify Tạo một thư mục có tên là bộ điều khiển và một tệp mới bên trong thư mục có tên là spotify. js với nội dung sau
Trong tệp này, chúng tôi đã thêm hai chức năng để xử lý xác thực, đăng nhập và gọi lại Chức năng Đăng nhập sẽ chuyển hướng người dùng đến dịch vụ tài khoản Spotify, đồng thời gửi clienteId, phạm vi và chuyển hướng uri để Spotify có thể nhận ra ứng dụng trước khi cho chúng tôi cơ hội nhận mã thông báo truy cập cho một người dùng cụ thể Nếu người dùng cho phép ứng dụng cung cấp thông tin đăng nhập Spotify, thì chúng tôi sẽ nhận được yêu cầu trên redirectUri của chúng tôi mà chúng tôi sẽ xử lý trong chức năng gọi lại của mình Trong chức năng gọi lại của chúng tôi, điều đầu tiên chúng tôi cần làm là xác minh rằng chúng tôi có mã và trạng thái đó là chính xác Sau đó, chúng tôi có thể yêu cầu mã thông báo truy cập gửi yêu cầu tới điểm cuối api/mã thông báo Spotify, cung cấp mã mà chúng tôi nhận được từ họ và clientId và clientIdSecret của chúng tôi làm mã thông báo truy cập Khi chúng tôi đăng yêu cầu đó lên Spotify, chúng tôi sẽ nhận được mã thông báo truy cập và mã thông báo làm mới mà chúng tôi sẽ sử dụng để yêu cầu thông tin của người dùng Chúng tôi sẽ sử dụng mã thông báo đó để yêu cầu thông tin hồ sơ của người dùng và hoàn thành yêu cầu. Hãy thêm bộ điều khiển vào ứng dụng chính của chúng tôi và dùng thử. ứng dụng của chúng tôi. js sẽ trông như thế này
Chạy npm start và mở http. //máy chủ cục bộ. 3000/lần đăng nhập trong trình duyệt của bạn. Hơn nữa, chúng tôi có thể thêm một điểm cuối để sử dụng mã thông báo làm mới, vì vậy chúng tôi không phải thực hiện tất cả quy trình đăng nhập sau khi mã thông báo truy cập hết hạn, nhưng điều này đủ để cho thấy tại sao hộ chiếu sẽ giúp cuộc sống của chúng tôi đơn giản hơn Bây giờ là thời gian Hộ chiếu Trước hết, chúng ta cần thêm các phụ thuộc cần thiết để làm việc với hộ chiếu vào packaje của chúng ta. json. Vì vậy, hãy thêm hộ chiếu, hộ chiếu-spotify và phiên nhanh vào gói của chúng tôi. json và sau đó chạy cài đặt npm
Bây giờ, chúng tôi sẽ tạo một thư mục mới có tên là phần mềm trung gian và một tệp mới bên trong nó có tên là hộ chiếu. js. Chúng tôi sẽ bao gồm nội dung sau bên trong tệp sẽ đảm nhiệm tất cả các chức năng mà chúng tôi đã thấy ở trên Như chúng tôi đã nói trước đây, hộ chiếu sử dụng các chiến lược để xác thực các yêu cầu, có thể đi từ xác minh tên người dùng và mật khẩu đến ủy quyền xác thực cho OAuth hoặc OpenID Trong trường hợp của chúng tôi, chúng tôi sẽ sử dụng chiến lược spotify để ủy quyền cho dịch vụ OAuth của họ. hộ chiếu của chúng tôi. js sẽ trông như thế này với chiến lược
Chúng tôi đã thêm chiến lược cung cấp id và bí mật khách hàng của mình, cùng với uri chuyển hướng và đó là tất cả những gì chúng tôi phải làm. Hộ chiếu sẽ đảm nhận việc chuyển hướng uri và cung cấp mã thông báo truy cập, mã thông báo làm mới và thông tin người dùng mà trước đây chúng tôi phải tự thực hiện Sau khi nhận được tất cả thông tin này từ Spotify OAuth, chúng tôi có thể xác minh bất cứ điều gì chúng tôi cần trong cơ sở dữ liệu của riêng mình, chẳng hạn như tạo người dùng nếu nó không tồn tại hoặc cập nhật thông tin nếu cần Chúng tôi có chức năng gọi lại 'xong', mà chúng tôi sẽ sử dụng để cho biết liệu xác thực đó có thành công hay không. Vì vậy, nếu xác thực thành công, chúng ta gọi hàm với done(null, userResponse) Mặt khác, nếu xác thực không thành công, chúng ta gọi hàm với done(null, false, {message. 'tại sao nó không thành công'}) Nếu xảy ra lỗi, chúng tôi gọi hàm bằng done(err) Bây giờ, hãy sửa đổi ứng dụng. js để sử dụng phần mềm trung gian hộ chiếu. Chúng tôi cần bao gồm nhập hộ chiếu, khởi tạo chúng và cuối cùng, khai báo hai tuyến cần thiết để xác thực OAuth. một để chuyển hướng người dùng đến nhà cung cấp dịch vụ và cái còn lại sẽ là url nơi người dùng sẽ được chuyển hướng sau khi xác thực với nhà cung cấp
Hãy tiếp tục và chạy npm start để kiểm tra nó Phần kết luận Cân nhắc mọi thứ, hộ chiếu rất dễ sử dụng, linh hoạt và dễ tích hợp với các khung như Express. Bạn có thể xử lý không chỉ xác thực mà còn cả ủy quyền (phiên, mã thông báo jwt) Nó có rất nhiều Chiến lược để tận dụng (hơn 500). Để biết thêm thông tin, bạn có thể truy cập http. //www. hộ chiếu. org/ và xem tài liệu chính thức Ngoài ra, nếu bạn cần trợ giúp phát triển giải pháp tùy chỉnh hoặc bất kỳ điều gì liên quan đến phát triển phần mềm, bạn có thể liên hệ với Devlane Những thứ như thế này là một trong nhiều thứ chúng tôi tạo ra hàng ngày cho các công ty cần thúc đẩy hoạt động kinh doanh của họ hoặc tạo ra các giải pháp tùy chỉnh. Bạn có thể xem xét tất cả các dịch vụ của chúng tôi ở đây hoặc có thể bạn có thể trực tiếp và hỏi bất cứ điều gì bạn muốn |