


Flask-Social : ajout d'une connexion sociale à votre application Web Python
Avec le développement rapide des médias sociaux, de plus en plus de sites Web et d'applications commencent à utiliser la connexion sociale pour simplifier le processus d'enregistrement et de connexion des utilisateurs. Cependant, la mise en œuvre d’une telle fonctionnalité n’est pas facile. Comment interagir avec les réseaux sociaux via le protocole OAuth ? Comment utiliser les informations utilisateur obtenues ? Comment gérer les autorisations et la sécurité ? Heureusement, il existe une excellente extension d'application Python comme Flask-Social qui peut nous aider à réaliser cette fonction plus facilement. Cet article présentera l'utilisation et les principes de base de Flask-Social.
Installation et configuration de Flask-Social
Tout d'abord, nous devons installer Flask-Social. Utilisez l'outil pip pour installer rapidement :
pip install Flask-Social
Une fois l'installation terminée, nous devons configurer Flask-Social dans le projet Flask. Introduisez-le d'abord dans l'application Flask :
from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask.ext.social import Social from flask.ext.social.datastore import SQLAlchemyConnectionDatastore app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///app.db' db = SQLAlchemy(app) app.config['SOCIAL_AUTH_TWITTER_KEY'] = 'your_key' app.config['SOCIAL_AUTH_TWITTER_SECRET'] = 'your_secret' social = Social(app, SQLAlchemyConnectionDatastore(db))
Dans le code ci-dessus, nous introduisons d'abord les bibliothèques de dépendances nécessaires, notamment Flask, SQLAlchemy et Flask-Social. Ensuite, nous définissons une application Flask et une base de données SQLAlchemy, ainsi que l'URL pour se connecter à la base de données. Ensuite, nous définissons la clé et le secret pour l'authentification Twitter. Twitter est utilisé ici à titre d'exemple. Bien entendu, les informations provenant d'autres plateformes de médias sociaux peuvent également être utilisées. Enfin, initialisez l'instance social
via la classe Social
et connectez-la à la classe SQLAlchemyConnectionDatastore. Social
类初始化 social
实例,并将其与 SQLAlchemyConnectionDatastore 类连接起来。
Flask-Social 的基本用法
有了上面的设置,我们现在可以使用 Flask-Social 来添加社交登录功能了。假设我们要在应用程序中添加 Twitter 登录,我们可以使用以下代码:
from flask import Flask, request, redirect, url_for, render_template from flask_sqlalchemy import SQLAlchemy from flask.ext.social import Social from flask.ext.social.datastore import SQLAlchemyConnectionDatastore app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///app.db' app.secret_key = 'secret' db = SQLAlchemy(app) app.config['SOCIAL_AUTH_TWITTER_KEY'] = 'your_key' app.config['SOCIAL_AUTH_TWITTER_SECRET'] = 'your_secret' social = Social(app, SQLAlchemyConnectionDatastore(db)) @app.route('/') def home(): return render_template('home.html') @app.route('/login') def login(): return social.twitter.authorize(callback=url_for('auth_twitter', next=request.args.get('next') or request.referrer or None)) @app.route('/auth/twitter') def auth_twitter(): resp = social.twitter.authorized_response() if resp is None: return redirect(url_for('home')) session['twitter_token'] = ( resp['oauth_token'], resp['oauth_token_secret'] ) return redirect(url_for('profile')) @app.route('/profile') def profile(): return render_template('profile.html')
这里的代码很简单:我们首先定义了一个主页,然后我们定义一个 login 路由,使用social.twitter.authorize()
函数来生成登录页面。接着,我们处理了 Twitter 登录的信息回调,并将 token 和 secret 存储在 session 中。最后,我们定义一个 profile 路由来展示用户信息。
请注意,在上面的代码中,我们还定义了一个app.secret_key
,用于生成会话密钥,这是 Flask-Social 需要的。
Flask-Social 的进阶应用:Github 登录
常见的社交登录平台当然不止 Twitter 一个,Github 作为一个开发者社交网站,也广受欢迎。于是我们在 Flask 应用程序中加入 Github 登录,只需略作更改,例如:
from flask import Flask, request, redirect, url_for, render_template, session from flask_sqlalchemy import SQLAlchemy from flask.ext.social import Social from flask.ext.social.datastore import SQLAlchemyConnectionDatastore app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///app.db' app.secret_key = 'secret' db = SQLAlchemy(app) app.config['SOCIAL_AUTH_GITHUB_KEY'] = 'your_key' app.config['SOCIAL_AUTH_GITHUB_SECRET'] = 'your_secret' social = Social(app, SQLAlchemyConnectionDatastore(db)) @app.route('/') def home(): return render_template('home.html') @app.route('/login') def login(): return social.github.authorize(callback=url_for('auth_github', next=request.args.get('next') or request.referrer or None)) @app.route('/auth/github') def auth_github(): resp = social.github.authorized_response() if resp is None: return redirect(url_for('home')) session['github_token'] = ( resp['access_token'], '' ) return redirect(url_for('profile')) @app.route('/profile') def profile(): me = social.github.get('/user') return render_template('profile.html', name=me.data['name'])
如你所见,只需修改 key 和 secret,并在 authorize()
和 authorized_response()
方法中使用 social.github
rrreee
Le code ici est simple : nous définissons d'abord une page d'accueil, puis nous définissons une route de connexion, en utilisantsocial.twitter.authorize( )
pour générer la page de connexion. Ensuite, nous traitons le rappel des informations de connexion Twitter et stockons le jeton et le secret dans la session. Enfin, nous définissons un itinéraire de profil pour afficher les informations utilisateur. 🎜🎜Veuillez noter que dans le code ci-dessus, nous définissons également un app.secret_key
, qui est utilisé pour générer la clé de session, qui est requise par Flask-Social. 🎜🎜Application avancée de Flask-Social : connexion Github🎜🎜Bien sûr, Twitter n'est pas la seule plateforme de connexion sociale courante En tant que site de réseautage social pour développeurs, Github est également très populaire. Nous avons donc ajouté la connexion Github à l'application Flask avec seulement de légères modifications, par exemple : 🎜rrreee🎜Comme vous pouvez le voir, il vous suffit de modifier la clé et le secret, et d'utiliser authorize()
et Utilisez <code>social.github
dans la méthodeauthorized_response() pour implémenter la connexion sociale basée sur Github. 🎜🎜Résumé de Flask-Social🎜🎜Avec Flask-Social, nous pouvons facilement ajouter une fonctionnalité de connexion sociale à nos applications Flask. Grâce à Flask-Social, nous pouvons utiliser directement le code Python pour faire fonctionner l'API du réseau social sans avoir à gérer manuellement le protocole OAuth. Si vous souhaitez prendre en charge plusieurs réseaux sociaux, il suffit d'une légère modification du code. Avec une opération aussi simple, vous réduirez les problèmes d’innombrables utilisateurs et augmenterez la fidélité des utilisateurs et la pérennité de votre application. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds





Comment utiliser React et Flask pour créer des applications Web simples et faciles à utiliser Introduction : Avec le développement d'Internet, les besoins des applications Web deviennent de plus en plus diversifiés et complexes. Afin de répondre aux exigences des utilisateurs en matière de facilité d'utilisation et de performances, il devient de plus en plus important d'utiliser des piles technologiques modernes pour créer des applications réseau. React et Flask sont deux frameworks très populaires pour le développement front-end et back-end, et ils fonctionnent bien ensemble pour créer des applications Web simples et faciles à utiliser. Cet article détaillera comment exploiter React et Flask

Django et Flask sont tous deux leaders dans les frameworks Web Python, et ils ont tous deux leurs propres avantages et scénarios applicables. Cet article procédera à une analyse comparative de ces deux frameworks et fournira des exemples de code spécifiques. Introduction au développement Django est un framework Web complet, son objectif principal est de développer rapidement des applications Web complexes. Django fournit de nombreuses fonctions intégrées, telles que ORM (Object Relational Mapping), formulaires, authentification, backend de gestion, etc. Ces fonctionnalités permettent à Django de gérer de grandes

En partant de zéro, je vais vous apprendre étape par étape comment installer Flask et créer rapidement un blog personnel. En tant que personne qui aime écrire, il est très important d'avoir un blog personnel. En tant que framework Web Python léger, Flask peut nous aider à créer rapidement un blog personnel simple et entièrement fonctionnel. Dans cet article, je vais repartir de zéro et vous apprendre étape par étape comment installer Flask et créer rapidement un blog personnel. Étape 1 : Installer Python et pip Avant de commencer, nous devons d'abord installer Python et pi

La première partie présente l'intégration de base de Flask et d'Intellij IDEA, les paramètres du projet et de l'environnement virtuel, l'installation des dépendances, etc. Nous continuerons ensuite à explorer d'autres conseils de développement d'applications Web Python pour créer un environnement de travail plus efficace : Utiliser FlaskBlueprintsFlaskBlueprints vous permet d'organiser le code de votre application pour une gestion et une maintenance plus faciles. Blueprint est un module Python qui regroupe

Tutoriel d'installation du framework Flask : vous apprendrez étape par étape comment installer correctement le framework Flask. Des exemples de code spécifiques sont requis. Introduction : Flask est un framework de développement Web Python simple et flexible. Il est facile à apprendre, facile à utiliser et doté de fonctionnalités puissantes. Cet article vous guidera étape par étape pour installer correctement le framework Flask et fournira des exemples de code détaillés pour référence. Étape 1 : installer Python Avant d'installer le framework Flask, vous devez d'abord vous assurer que Python est installé sur votre ordinateur. Vous pouvez commencer à partir de P

Déploiement d'applications Flask : comparaison de Gunicorn et suWSGI Introduction : Flask, en tant que framework Web Python léger, est apprécié par de nombreux développeurs. Lors du déploiement d'une application Flask dans un environnement de production, le choix de l'interface de passerelle serveur (SGI) appropriée est une décision cruciale. Gunicorn et uWSGI sont deux serveurs SGI courants. Cet article les décrira en détail.

FlaskvsFastAPI : Le meilleur choix pour un développement efficace de WebAPI Introduction : Dans le développement de logiciels modernes, WebAPI est devenu un élément indispensable. Ils fournissent des données et des services qui permettent la communication et l'interopérabilité entre différentes applications. Lors du choix d'un framework pour développer WebAPI, Flask et FastAPI sont deux choix qui ont beaucoup retenu l'attention. Les deux frameworks sont très populaires et chacun présente ses propres avantages. Dans cet article, nous examinerons Fl

Flask-RESTful et Swagger : meilleures pratiques pour créer des API RESTful dans des applications Web Python (partie 2) Dans l'article précédent, nous avons exploré les meilleures pratiques pour créer des API RESTful à l'aide de Flask-RESTful et Swagger. Nous avons présenté les bases du framework Flask-RESTful et montré comment utiliser Swagger pour créer la documentation d'une API RESTful. Livre
