Flask 및 Github로 인증 || 인증
6729 단어 flaskauthlibgithubnelsoncode
설치
pip3 install Flask Authlib requests python-dotenv
구성
from flask import Flask, url_for, redirect
from dotenv import load_dotenv
from os import getenv
from authlib.integrations.flask_client import OAuth
app = Flask(__name__)
app.secret_key = "mysecretkey"
oauth = OAuth(app)
github = oauth.register(
name='github',
client_id=getenv("CLIENT_ID"),
client_secret=getenv("SECRET_ID"),
access_token_url='https://github.com/login/oauth/access_token',
access_token_params=None,
authorize_url='https://github.com/login/oauth/authorize',
authorize_params=None,
api_base_url='https://api.github.com/',
client_kwargs={'scope': 'user:email'},
)
@app.route("/")
def saludo():
return "Hello"
if __name__ == '__main__':
load_dotenv()
app.run(debug=True, port=4000, host="0.0.0.0")
승인 경로
authorize_redirect는 "콜백 URL"로 리디렉션할 URL을 나타냅니다.
@app.route("/login")
def login():
redirect_url = url_for("authorize", _external=True)
return github.authorize_redirect(redirect_url)
콜백 URL
@app.route("/authorize")
def authorize():
token = github.authorize_access_token()
resp = github.get('user', token=token)
profile = resp.json()
# do something with the token and profile
print(profile, token)
return redirect('/')
Github의 설정
Code of example in Github 🔗
Reference
이 문제에 관하여(Flask 및 Github로 인증 || 인증), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/nelsoncode/authentication-with-flask-and-github-authlib-19ej텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)