OAuth 2.0 örnek uygulama

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Roblox, kullanıcıların Roblox hesaplarına giriş yapmasına ve deneyimleri arasında mesaj yayınlamasına izin vermek için OAuth 2.0'yi nasıl kullanacaklarını gösteren bir Node.js örnek uygulama sağlar.Bu uygulama, kimlik doğrulama kodu akışını PKCE olmadan kullanır ve bu nedenle yalnızca özel sunucular gibi gizli müşteriler için uygundur.


.zip dosyasını indirdikten sonra, kendi klasörüne çıkarın.

Uygulamayı uygulama

Uygulamayı ayarlamanın ilk adımı, Roblox web sitesine kaydolmak ve müşteri kimliğini ve gizli bir yere kopyalamaktır.Ardından bu ayarlarla standart kayıt adımlarını izleyin:

  1. İzinlerin altında , openid, profile ve universe-messaging-service:publish alanlarını ekleyin.
  2. Yönlendirme URL'leri altında, http://localhost:3000/oauth/callback yönlendirme ekleyin. Eğer uygulamanız için varsayılan olmayan bir port kullanmak istiyorsanız, burada belirtin.

Çevre değişkenlerini ayarla

Onları kodda saklamak yerine (tavsiye edilmez), uygulama müşteri kimliğiniz ve gizli sırrınız için çevre değişkenlerini kullanır.Çevre değişkenleri ekleme süreci işletim sistemine göre değişir.

Windows'ta aşağıdaki PowerShell komutlarını çalıştırın:


$env:ROBLOX_CLIENT_ID='your_client_id_here'
$env:ROBLOX_CLIENT_SECRET='your_client_secret_here'
$env:ROBLOX_PORT=3000 # Optional. Default is 3000.

Mac ve çoğu Linux dağıtımında, bu komutları terminalde çalıştırın:


export ROBLOX_CLIENT_ID=your_client_id_here
export ROBLOX_CLIENT_SECRET=your_client_secret_here
export ROBLOX_PORT=3000 # Optional. Default is 3000.

uygulamakaydettiğinizde varsayılan olmayan bir portu yeniden yönlendirme URL'sine belirttiyseniz, ROBLOX_PORT değişkenini eklediğinizden emin olun.

Bağımlılıkları yükle

Uygulamanın bir avuç bağımlılığı var ve bunlar package.json 'de görülebilir. Bunları yüklemek için şunu yapın:


npm ci

uygulama'i çalıştır

uygulamabaşlatmak için şunu yürütün:


npm start

Ardından bir web tarayıcısında http://localhost:3000 (veya varsayılmayan portunuza) navigasyon yapın.

Uygulama hemen Roblox giriş ekranına yönlendirir ve bu noktada giriş yapabilir, uygulamanın istediği izinleri doğrulayabilir ve Onayla ve Erişim Ver seçeneğine tıklayabilirsiniz.

Roblox ardından sizi localhost adresine yönlendirir, burada uygulamanın şu anda bazı minimal kullanıcı bilgilerini gösterdiğini, Roblox'daki profilinize bir bağlantı ve deneyimleriniz arasında mesaj yayınlamak için kullanabileceğiniz alanları görebileceğinizi görebilirsiniz.

uygulamahakkında

Genel hatlarıyla, index.js aşağıdaki işlemleri gerçekleştirir:

  1. express kullanarak yeni bir web sunucusu başlatır.
  2. Yetkilendirme, kullanıcı bilgileri vb. için son noktaları içeren Roblox Açık Kimlik Bağlantısı (OIDC) yapılandırmasını alırBu son noktalar hakkında daha fazla bilgi için, OAuth 2.0 doğrulamasına bakın.
  3. openid-client ve depolanmış kredilerinizi kullanarak yeni bir Açık Kimlik istemcisi oluşturur.Bu istemci, doğru şekilde HTTP isteklerini OAuth 2.0 son noktalarına gönderme sürecini dramatik bir şekilde basitleştirir.
  4. Giriş ve çıkış akışları ve OAuth 2.0 geri çağrısı için yönlendirmeler dahil uygulama için yolları tanımlar.
  5. Başarılı bir girişten sonra, çeşitli jetonları çerezler olarak saklar, bunlar da getHomeHtml.js yardımıyla HTML olarak gösterdiği bazı minimal kullanıcı bilgileriyle birlikte.