Sto cercando di passare tutto ai miei metodi OAuth e Discourse è l’ultima cosa nella mia lista.
Le cose che mi piacerebbe completare se fosse una funzionalità:
- Come potrei creare campi utente pubblici/privati da visualizzare nella loro pagina utente su di loro? Come
Group Rankche chiunque può vedere, ma comeDiscord Idche solo amministratori e moderatori possono vedere (anche API)?
Inoltre, come potrei implementarlo in python usando Quart? Questo è del codice che ho programmato, anche se la documentazione è molto poco chiara su come passare dati per Discourse e come fare, inclusi i Campi Utente, e cercare di farli in modo che gli utenti non possano modificarli.
from quart import Quart, redirect, request
from rblxopencloud import OAuth2App, Group
from roblox import RobloxUser
oauth_app = OAuth2App("ROBLOX_APP_ID", "ROBLOX_APP_SECRET", "ROBLOX_APP_REDIRECT")
app = Quart(__name__)
@app.route("/")
async def authentication_verify():
return redirect(oauth_app.generate_uri(["openid", "profile"]))
@app.route("/authentication/redirect")
async def authentication_redirect():
roblox_info = oauth_app.exchange_code(request.args.get('code'))
group_member: Group = RobloxUser.fetch_member(roblox_info.user, 4800717)
group_rank = "Test Subject"
if group_member != None:
group_rank = group_member.fetch_role().name
discord_id = "this-will-pull-from-my-db"
return {
"permalink": roblox_info.user.username,
"username": roblox_info.user.username,
"uri": roblox_info.user.profile_uri,
"avatar_url": roblox_info.user.generate_headshot(size=420, format="jpeg", is_circular=True),
# Questi vorrei che fossero campi utente (pubblici o privati)
"group_rank": group_rank, # Campo Utente Pubblico
"discord_id": discord_id, # Campo Utente Privato
"roblox_id": roblox_info.user.id, # Campo Utente Privato
}
app.run(host="host-ip-here", port=0000)
