Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813

    [Ajax] Errore 411 in remoto

    Ciao a tutti,
    ho creato degli script in Ajax che in locale (sia con ie e ff) funzionano benissimo.
    In remoto questi funzionano solo con IE, ma con FF no e mi dice errore 411. Sfogliando le guide, ho scoperto che questo errore è inerente ad un header chiamato Content-Lenght. In pratica questo header non è settato e non mi accetta la richesta. Dunque: se in locale funziona, a me interessa relativamente; a me interessa che funzioni (anche con FF) in remoto.
    Io credo che sia, oltre ai browser, il webserver su cui è hostato il sito. In locale io uso Apache, invece sul server remoto Lighthttpd o qualcosa del genere.

    Come posso corregere il bug?
    Grazie anticipatamente.
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    La chiamata ajax avviene sullo stesso dominio o è uno script o pagina esterna? Posta il link alla pagina.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    lo script ajax, sia in locale che in remoto, comunque effettua delle chiamate nel server stesso in cui si trova...
    Non posso postarvi il link, perché è in un'area riservata.
    Vi posto però uno di questi script:

    codice:
    function showBanks(url,input_field,button)
    {
      var ajax = new newXMLHttpRequest();
      ajax.open("post", url+"/"+input_field.options[input_field.selectedIndex].value, true);
      ajax.setRequestHeader("connection", "close");
      ajax.send(null);
      ajax.onreadystatechange = function()
      {
         if(ajax.readyState === 4)
         {
           if(ajax.status == 200)
           {
    
             button.style.display="none";
             input_field.disabled=true;
             var banks = ajax.responseText.split("\n");
             document.getElementById('banks').style.display="block";
             document.getElementById('message_bank').style.display="none";
             var selectlist = document.getElementById('bank');
    
             for(i=0;i<banks.length;i++)
             {
               var bank = banks[i];
               var row = bank.split(";");
               selectlist.options[i]=new Option(row[1],row[0]);
    
             }
           }
         }
      }
    }

    questo script funziona in locale con apache sia con ie che ff,
    in remoto con lighttp non va solo con ff...
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova a cambiare questa riga
    ajax.setRequestHeader("connection", "close");
    con questa
    ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    non va...
    se la sostituisco o la metto sotto a quella, mi restituisce sempre 411. Su quel codice che ti ho postato nn c'è il debug (una semplice alert) xke l'ho appena ripristinato
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ma cosa carica lo script una pagina?
    Se si, se richiami la pagina funziona?
    Nel caso fosse uno script se lo richiami direttamente funziona?
    La ActiveXObject come lo richiami?
    Se tu stesso dici che in locale funziona e un link non lo puoi postare tutte le info che puoi dare sono indispensabili, non conosco perfettamente ajax e sopratutto in metodo post ma non ho mai letto di conflitti con certi tipi di server, ma potrei sbagliarmi.


    Prova e documentarti qui http://javascript.html.it/guide/lezi...0/i-metodi-ii/
    Notte.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    Ciao andrea,
    E' proprio come pensavo. Ricerche mi hanno portato qui: https://bugzilla.mozilla.org/show_bu...en__&id=246651

    stavo leggendo come risolvere il bug.
    Su un sito ho trovato che basta mettere connection:close dovrebbe andare, ma nn va...
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

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.