Spaces:
Sleeping
Sleeping
from flask import Flask, request, jsonify | |
import json | |
import base64 | |
import requests | |
app = Flask(__name__) | |
# GitHub credentials | |
GITHUB_TOKEN = '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' # Set your token in environment variables | |
REPO_OWNER = 'hussein2000-oo' | |
REPO_NAME = 'dbailloolloloolollhrthlnewrgnk' | |
USER_FILE_NAME = 'user.json' | |
# Function to fetch user data from GitHub | |
def fetch_user_data(): | |
url = f'https://api.github.com/repos/{REPO_OWNER}/{REPO_NAME}/contents/{USER_FILE_NAME}' | |
headers = {'Authorization': f'token {GITHUB_TOKEN}'} | |
response = requests.get(url, headers=headers) | |
if response.status_code == 200: | |
content = response.json() | |
user_data = json.loads(base64.b64decode(content['content']).decode('utf-8')) | |
return user_data | |
else: | |
return None # Return None if fetching fails | |
def get_security_questions(): | |
data = request.json | |
username = data.get('username') | |
user_data = fetch_user_data() | |
if user_data and username in user_data: | |
questions = user_data[username]['security_questions'] | |
return jsonify({"security_questions": list(questions.keys())}), 200 | |
else: | |
return jsonify({"error": "User not found or data fetch failed."}), 404 | |
if __name__ == '__main__': | |
app.run(host="0.0.0.0", port=7860) | |