16 lines
388 B
Python
16 lines
388 B
Python
import base64
|
|
import io
|
|
import json
|
|
|
|
import qrcode
|
|
|
|
|
|
def build_qr_payload(qr_token: str) -> str:
|
|
return json.dumps({"v": 1, "token": qr_token}, separators=(",", ":"))
|
|
|
|
|
|
def qr_png_base64(data: str) -> str:
|
|
image = qrcode.make(data, box_size=8, border=2)
|
|
buffer = io.BytesIO()
|
|
image.save(buffer, format="PNG")
|
|
return base64.b64encode(buffer.getvalue()).decode("ascii")
|