Фреймворк FoalTS — версия 2.9 уже здесь 🎉 …

Вышла версия 2.9 фреймворка Foal! Вот улучшения, которые она принесла.

Новый провайдер OAuth2 для Twitter

После LinkedIn, Google, Github и Facebook, Foal теперь поддерживает Twitter для социальной аутентификации.

👉 Ссылка на документацию

Большое спасибо @LeonardoSalvucci за реализацию этой функции.

// 3p
import { Context, dependency, Get } from '@foal/core';
import { TwitterProvider } from '@foal/social';

export class AuthController {
  @dependency
  twitter: TwitterProvider;

  @Get('/signin/twitter')
  redirectToTwitter() {
    // Your "Login In with Twitter" button should point to this route.
    // The user will be redirected to Twitter auth page.
    return this.twitter.redirect();
  }

  @Get('/signin/twitter/callback')
  async handleTwitterRedirection(ctx: Context) {
    // Once the user gives their permission to log in with Twitter, the OAuth server
    // will redirect the user to this route. This route must match the redirect URI.
    const { userInfo, tokens } = await this.twitter.getUserInfo(ctx);

    // Do something with the user information AND/OR the access token.
    // If you only need the access token, you can call the "getTokens" method.

    // The method usually ends with a HttpResponseRedirect object as returned value.
  }

}
Вход в полноэкранный режим Выход из полноэкранного режима

Провайдеры OAuth2 поддерживают PKCE Code Flow

Абстрактный провайдер OAuth2 теперь поддерживает поток кода PKCE. Если вы хотите реализовать свой собственный провайдер с использованием PKCE, теперь это возможно!

Поддержка 15 версии graphql и последней версии type-graphql.

Зависимости Foal были обновлены для поддержки последней версии TypeGraphQL.

Оригинальная публикация: https://foalts.org/blog/2022/05/29/version-2.9-release-notes

Оцените статью
Procodings.ru
Добавить комментарий