File size: 2,403 Bytes
fbfa98a db6e2f8 fbfa98a 6e5ed1f db6e2f8 fbfa98a db6e2f8 fbfa98a db6e2f8 6bc4285 6e5ed1f fbfa98a 1e7a0a5 db6e2f8 fbfa98a db6e2f8 6e5ed1f b4f3540 6e5ed1f db6e2f8 d8ea0e9 b4f3540 d8ea0e9 db6e2f8 fbfa98a 5a1241b 35eab52 3ab3d9f 35eab52 fbfa98a 35eab52 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
import os
import requests
import json
from io import BytesIO
from flask import Flask, jsonify, render_template, request, send_file
from flask import Flask, redirect, url_for, session, request, jsonify, render_template
from google.oauth2 import id_token
from google.auth.transport import requests as grequests
import os
from modules.inference import infer_t5
from modules.dataset import query_emotion
# https://huggingface.co/settings/tokens
# https://huggingface.co/spaces/{username}/{space}/settings
API_TOKEN = os.getenv("BIG_GAN_TOKEN")
CLIENT_ID = "730959404664-67d22lrege5tmtt64dv2pe2tsostvqil.apps.googleusercontent.com"
CLIENT_SECRET = os.environ.get("GOOGLE_CLIENT_SECRET")
app = Flask(__name__)
app.secret_key = os.urandom(24)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/login")
def login():
return redirect("https://accounts.google.com/o/oauth2/auth?response_type=code&client_id={}&redirect_uri=http://localhost:7860/callback&scope=email%20profile&access_type=offline".format(CLIENT_ID))
@app.route("/callback")
def callback():
code = request.args.get("code")
token_response = grequests.post("https://oauth2.googleapis.com/token",
data={
"code": code,
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"redirect_uri": "http://localhost:7860/callback",
"grant_type": "authorization_code"
})
token_data = token_response.json()
access_token = token_data.get("access_token")
id_info = id_token.verify_oauth2_token(token_data.get("id_token"), grequests.Request(), CLIENT_ID)
# Store user information in session
session['user'] = id_info
return redirect(url_for("profile"))
if __name__ == "__main__":
app.run(host="0.0.0.0", port=7860, debug=True)
# @app.route("/profile")
# def profile():
# user = session.get('user')
# if user:
# return render_template("profile.html", user=user)
# else:
# return "User not authenticated"
# @app.route("/logout")
# def logout():
# session.pop('user', None)
# return redirect(url_for("index"))
# if __name__ == "__main__":
# app.run(debug=True)
|