Ho un problema con flask

di arca il
5 risposte
<script>
        document.getElementById('loginForm').addEventListener('submit', function(event) {
            event.preventDefault();
            var username = document.getElementById('username').value;
            var password = document.getElementById('password').value;
            let endpointUrl;

            endpointUrl='http://127.0.0.1:5000/login'
            fetch(endpointUrl,{
                method: 'POST',
                mode:"no-cors",
                headers: {
                    'Content-Type': 'application/json'
                },
                body: JSON.stringify({ username: username, password: password })
            })
            .then(response => response.json())
            .then(data => {
                if (data.message === 'Accesso riuscito!') {
                    document.getElementById('errorMessage').style.display = 'none';
                    document.getElementById('successMessage').style.display = 'block';
                    document.getElementById('successMessage').textContent = data.message;
                } else {
                    document.getElementById('successMessage').style.display = 'none';
                    document.getElementById('errorMessage').style.display = 'block';
                    document.getElementById('errorMessage').textContent = data.message;
                }
            })
            .catch(error => console.error('Errore:' , error));
        });
    </script>

Questo codice da in console l'errore 415(unsupported media type) e un errore di sintassi ma non riesco a capire quale.

5 Risposte

  • 17/04/2024 - arca ha scritto:


    Questo codice da in console l'errore 415(unsupported media type) e un errore di sintassi ma non riesco a capire quale.

    Per l'errore 415, le sue “ragioni” le trovi nella documentazione MDN, ad esempio.

    Devi controllare l'implementazione del server di cui non hai postato il codice (tra l'altro, se è un problema lato server, perché postare in JavaScript).

    Se hai un errore di sintassi, come fai a dirlo senza però sapere dov'è o qual è?
    Riporta tutte le informazioni necessarie a capire il problema, poiché non possiamo riprodurre la tua situazione integralmente sulla nostra macchina.

  • from flask import Flask, request, jsonify
    app = Flask(__name__)
    app.config['JSON_AS_ASCII']=False
    users = [
       {"username": "utente", "password": "password"}
    ]
    @app.route('/login', methods=['POST'])
    def login():
       data = request.get_json()
       username = data.get('username')
       password = data.get('password')
       for user in users:
           if user['username'] == username and user['password'] == password:
               return jsonify({"message": "Accesso riuscito!"}), 200
       return jsonify({"message": "Credenziali non valide. Riprova."}), 401
    if __name__ == '__main__':
       app.run(debug=True)

    Questo è il codice del server

  • Ho provato ma non funziona lo stesso

  • 24/04/2024 - arca ha scritto:


    Ho provato ma non funziona lo stesso

    Quindi il problema è nel codice del server.

    Non hai comunque indicato alcun dettaglio sul test che hai fatto, una copia del testo della richiesta che viene inviata, la risposta del server…

    Se fai prove e non pubblichi cosa hai fatto, dici “non funziona” e non aggiungi altro, direi che è difficile darti suggerimenti mirati.

Devi accedere o registrarti per scrivere nel forum
5 risposte