Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Chiamata ajax lenta

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    75

    Chiamata ajax lenta

    Salve, ho un problema con una chiamata ajax, in pratica per essere eseguita impiega circa 8 sec. Ho notato che prima va in pending poi viene eseguita correttamente. Ho fatto diverse prove per capire se si trattasse di js o del file php lato server con una semplice query per inserire dei dati in mysql.
    Da premettere che sempre sullo stesso hosting e sempre dallo stesso sito, ho altre chiamate ajax simili che funzionano correttamente.

    Ecco il codice:
    codice:
    function Invio() {
    
        var dati_form = $("#form_cont").serialize();
    
    
        $.ajax({
            type: "POST",
            url: "http://sito.it/salva.php",
            data: dati_form,
            dataType: "html",
            success: function(msg) {
                console.log(msg);
            },
            error: function() {
                alert("Errore...");
            }
        }); //ajax
    }
    php:

    Nel file php ho messo un semplice echo per visualizzare a schermo i dati ricevuti dal form.

  2. #2
    Utente di HTML.it L'avatar di Marcolino's
    Registrato dal
    May 2003
    residenza
    Udine
    Messaggi
    3,606
    scrivi solo url: "salva.php", l'url completo non è necessario, ad ogni buon conto la velocità dipende dal server non dallo script, è talmente semplice così che non mi pare ci siano strozzature.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    75
    Quote Originariamente inviata da Marcolino's Visualizza il messaggio
    scrivi solo url: "salva.php", l'url completo non è necessario, ad ogni buon conto la velocità dipende dal server non dallo script, è talmente semplice così che non mi pare ci siano strozzature.
    Ciao, il problema che il file salva.php lo eseguo da altro hosting e non quello dove gira il sito. In pratica si tratta di un app mobile che tramite una chiamata ajax salva i dati sul db. Quindi devo per forza specificare url. Ho semplificato al massimo lo script ma lo stesso ho questo problema. Ripeto ho altri script simili e funzionano tutti correttamente.

  4. #4
    Utente di HTML.it L'avatar di Marcolino's
    Registrato dal
    May 2003
    residenza
    Udine
    Messaggi
    3,606
    Ah ecco perché! In ajax questo crea problemi e all'inizio era persino vietato, o meglio si scoraggiava l'uso, poi il W3C ci ha messo una pezza, senti fai una cosa dato che usi jquery, leggiti le specifiche relative al cross domain, in ajax va specificato a parte, comunque rimane sempre da considerare la lentezza delle reti, ajax non è il modo migliore di procedere, anche se risolve un casino di problemi.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    75
    Ok adesso ci do un occhiata. La cosa strana e che su 10 script simili solo questa funziona male, quindi non riesco a capire dove sbaglio...

  6. #6
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, dovresti prima di tutto sapere se il cross domain sul server che vuoi chiamare sia abilitato (almeno dal dominio dove lanci la chiamata). Se cosi' non fosse potresti semplicemente fare una chiamata in ajax su tuo stesso server e fare la chiamata verso quel server col linguaggio lato server che usi (ad esempio con un curl() in PHP). In questo modo il crossdomain non sarà più un problema.
    Per capire se la lentezza e' dovuta alla rete/connessione verso altro server puoi fare la stessa chiamata manualmente sul server con stessa url e vedere se c'e' differenza.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.