omniauth-twitter2 gem - Rails 앱에서 OAuth 2.0으로 트위터 계정을 인증하는 방법은 무엇입니까?

tl;박사



이 보석을 만들었습니다.


나스케 /


Twitter OAuth2로 인증하기 위한 OmniAuth 전략





OmniAuth::트위터2





이 gem은 Twitter OAuth2로 인증하기 위한 OmniAuth 전략을 제공합니다.

설치


애플리케이션의 Gemfile에 다음 행을 추가하십시오.
gem 'omniauth-twitter2'

And then execute:

$ bundle install
또는 다음과 같이 직접 설치하십시오.
$ gem install omniauth-twitter2

용법


울타리


# config/initializers/omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
  provider :twitter2, ENV["TWITTER_API_KEY"], ENV["TWITTER_API_SECRET"], callback_path: '/auth/twitter2/callback', scope: "tweet.read users.read"
end

인증 해시


  { "provider" => "twitter2",
    "uid" => "108252390",
    "info" => {
      "name" => "うなすけ",
      "email" => nil,
      "nickname" => "yu_suke1994",
      "description" => "帰って寝たい",
      "image" => "https://pbs.twimg.com/profile_images/580019517608218624/KzEZSzUy_normal.jpg",
      "urls" => {
        "Website" => "https://t.co/NCFLB8wDkx",
        "Twitter" => "https://twitter.com/yu_suke1994"
      }
    },
    "credentials" => {
      "token" => "TOKENTOKENTOKENTOKENTOKENTOKEN",
      "expires_at" => 1642016242,
      "expires" => true
    },
    "extra" => {
      "raw_info" => {
        "data" => {
          "profile_image_url" =>





이 gem은 인증 프로토콜에 OAuth 2.0을 사용하는 Twitter용 OmniAuth 전략 중 하나입니다.

omniauth-twitter gem이 있습니다. 이 보석이 왜?



예, omniauth-twitter gem은 잘 관리되고 널리 사용되는 gem입니다.

단, omniauth-twitter는 OAuth 1.0a를 사용합니다.

2021년 12월 15일부터 Twitter OAuth 2.0 GA



2021-12-15에 Twitter는 OAuth 2.0 일반 가용성을 발표했습니다.






트위터 개발자


@twitterdev






우리도 거의 믿을 수 없지만 마침내 여기에 있습니다! ⌛오늘부터 모든 개발자가 OAuth 2.0 및 새로운 세분화된 권한 범위를 사용할 수 있습니다. 베타에서 우리와 함께 일했고 이 문제를 해결하는 데 도움을 준 개발자 커뮤니티에 감사드립니다. twittercommunity.com/t/announcing-o…


오후 19:15 - 2021년 12월 14일









그리고 릴리스에서 "새로운 세분화된 권한 범위"를 사용할 수 있습니다.

이전 권한 범위에서 이러한 세 종류의 범위를 선택할 수 있습니다. 너무 거칠다.
  • 읽기
  • 읽기 및 쓰기
  • 읽기 및 쓰기 및 다이렉트 메시지



  • 하지만 이제 OAuth 2.0(Twitter API V2를 통해)의 목록에서 충분한 권한을 선택할 수 있습니다.
    tweet.read , tweet.write , tweet.moderate.write , users.read , follows.read , follows.write , offline.access , space.read , mute.read , mute.write , like.read , (445) 9,917 ) , like.write , list.read , list.write

    OK, 내 rails 앱에서 OAuth 2.0으로 트위터를 사용하는 방법은 무엇입니까?



    "omniauth-twitter2"라는 보석을 만들었습니다.

    이것은 omniauth 전략 중 하나이므로 omniauth(또는 고안?)를 사용하는 경우 레일 앱을 쉽게 통합할 수 있습니다.

    ("2"는 OAuth 2.0을 의미하며 "omniauth-twitter"gem의 후속 버전을 의미하지 않습니다. gem이 여전히 모든 곳에서 작동하기 때문입니다!)

    그리고 omniauth와 omniauth-twitter2를 사용하는 샘플 애플리케이션을 만들었습니다.
  • URL:
  • 소스 코드:

  • 이 앱은 트위터로만 로그인하지만 "트위터로 로그인"을 구현하는 방법을 보여주기에는 충분합니다.

    주목



    트위터 앱에서 OAuth 2.0 API를 사용하려면 앱을 "프로젝트"아래로 이동해야 합니다. 앱이 여전히 "독립형 앱"인 경우 앱에서 OAuth 2.0을 사용할 수 없습니다.



    ...그리고 저는 인증 전문가가 아닙니다. 버그를 발견하면 풀 리퀘스트나 이슈를 주세요.


    원한다면 GitHub 리포지토리에 별표를 표시하거나 게시물을 공유하면 기쁩니다!

    📝 원본 게시물:

    좋은 웹페이지 즐겨찾기