cfe000f030
- Fix is_admin() method shadowing is_admin database column in User model - Fix check_password() crash when password_hash is None (OAuth-only users) - Fix SystemSetting.all_settings() formatting error (missing newline) - Fix MAIL_PORT returning string instead of int in config - Fix AUTOMATION_TOKEN config formatting (missing newline before comment) - Fix path traversal vulnerability in serve_user_audio using realpath validation - Fix weak auth in process.py, replace session check with @login_required - Fix int() crash on non-numeric priority in import_songs.py - Add timeout to SMTP connection in email_helper.py - Add timeouts to external API requests in metadata.py and spotify_helper.py - Fix security tests to properly reload config module - Fix metadata test mock data key mismatch (preview_url -> spotify_preview_url) - Add skip decorator to integration test requiring live API credentials Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
20 lines
618 B
Python
20 lines
618 B
Python
from flask import Blueprint, session, redirect, url_for, jsonify, request, current_app
|
|
from flask_login import login_required
|
|
import base64
|
|
|
|
process_bp = Blueprint('process', __name__, url_prefix='/process')
|
|
|
|
@process_bp.route('/base64', methods=['POST'])
|
|
@login_required
|
|
def base64_encode_data():
|
|
"""
|
|
Return base64-encoded string from data provided in request body.
|
|
"""
|
|
# Get binary data from request
|
|
data = request.get_data()
|
|
if not data:
|
|
return jsonify({'error': 'No data provided'}), 400
|
|
|
|
return jsonify({
|
|
'encoded': base64.b64encode(data).decode('utf-8')
|
|
}) |