Ứng dụng mẫu OAuth 2.0

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Roblox cung cấp một ứng dụng mẫu Node.js cho thấy cách sử dụng OAuth 2.0 để cho phép người dùng đăng nhập vào tài khoản Roblox của họ và phát thông điệp qua các trò chơi của họ. Ứng dụng này sử dụng luồng mã autorização không có PKCE và do đó chỉ phù hợp với các khách hàng bí mật, chẳng hạn như máy chủ riêng.


Sau khi tải xuống tệp .zip, hãy giải nén nó vào một thư mục riêng.

Đăng ký ứng dụng

Bước đầu tiên để thiết lập ứng dụng là đăng ký nó trên trang web Roblox và sao chép ID khách hàng và bí mật đến một nơi an toàn. Sau đó, làm theo các bước đăng ký tiêu chuẩn với các cài đặt sau:

  1. Dưới Quyền, thêm các phạm vi openid, profileuniverse-messaging-service:publish.
  2. Dưới URL chuyển hướng, thêm http://localhost:3000/oauth/callback redirect`. Nếu bạn muốn sử dụng một cổng không mặc định cho ứng dụng của mình, hãy chỉ định ở đây.

Thiết lập biến môi trường

Thay vì lưu trữ chúng trong mã (không được khuyến nghị), ứng dụng sử dụng các biến môi trường cho ID khách hàng và bí mật của bạn. Quy trình thêm biến môi trường khác nhau tùy theo hệ điều hành.

Trên Windows, chạy các lệnh PowerShell sau:


$env:ROBLOX_CLIENT_ID='your_client_id_here'
$env:ROBLOX_CLIENT_SECRET='your_client_secret_here'
$env:ROBLOX_PORT=3000 # Tùy chọn. Mặc định là 3000.

Trên Mac và hầu hết các bản phân phối Linux, chạy các lệnh này ở dòng lệnh:


export ROBLOX_CLIENT_ID=your_client_id_here
export ROBLOX_CLIENT_SECRET=your_client_secret_here
export ROBLOX_PORT=3000 # Tùy chọn. Mặc định là 3000.

Nếu bạn đã chỉ định một cổng không mặc định trong URL chuyển hướng khi đăng ký ứng dụng của mình, hãy chắc chắn thêm biến ROBLOX_PORT.

Cài đặt phụ thuộc

Ứng dụng có một vài phụ thuộc, có thể thấy trong package.json. Để cài đặt chúng, hãy chạy:


npm ci

Chạy ứng dụng

Để khởi động ứng dụng, hãy chạy:


npm start

Sau đó điều hướng đến http://localhost:3000 (hoặc cổng không mặc định của bạn) trong trình duyệt web.

Ứng dụng sẽ ngay lập tức chuyển hướng bạn đến màn hình đăng nhập của Roblox, tại đó bạn có thể đăng nhập, xác minh các quyền mà ứng dụng đang yêu cầu và nhấp vào Xác nhận và Cấp quyền.

Roblox sau đó sẽ chuyển hướng bạn trở lại localhost, nơi bạn có thể thấy rằng ứng dụng hiện hiển thị một số thông tin người dùng tối thiểu, một liên kết trở lại hồ sơ của bạn trên Roblox và các trường mà bạn có thể sử dụng để phát thông điệp qua các trò chơi của bạn.

Về ứng dụng

Tóm tắt, index.js thực hiện các thao tác sau:

  1. Khởi động một máy chủ web mới sử dụng express.
  2. Lấy cấu hình OpenID Connect (OIDC) của Roblox, bao gồm các điểm cuối cho xác thực, thông tin người dùng, v.v. Để biết thêm thông tin về các điểm cuối này, hãy xem xác thực OAuth 2.0.
  3. Tạo một khách hàng Open ID mới sử dụng openid-client và các thông tin đăng nhập của bạn đã lưu. Khách hàng này đơn giản hóa đáng kể quá trình hình thành và gửi các yêu cầu HTTP đúng cách đến các điểm cuối OAuth 2.0.
  4. Định nghĩa các tuyến đường cho ứng dụng, bao gồm các chuyển hướng cho các luồng đăng nhập và đăng xuất cũng như callback OAuth 2.0.
  5. Sau khi đăng nhập thành công, lưu trữ các mã thông báo khác nhau dưới dạng cookie, cùng với một số thông tin người dùng tối thiểu mà nó hiển thị dưới dạng HTML với sự trợ giúp từ getHomeHtml.js.
©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.