Visualizzazione risultati 1 fino 7 di 7

Discussione: XMLHttpRequest che restituitsce sempre lo status generico "0".

  1. #1
    Data registrazione
    06-08-2019
    Messaggi
    10

    Post XMLHttpRequest che restituitsce sempre lo status generico "0".

    Buongiorno a tutti.

    Stavo facendo delle prove e ho un problema persistente con l'esecuzione del reperimento di codice HTML da un generico indirizzo web.
    Inizializzando l'oggetto XMLHttpRequest e inviando la richiesta GET, ottengo il ready-state 4, ma come status lo "0", cioè quello generico, quindi nemmeno un normale errore 4xx o 5xx.

    Ho provato a inserire degli Header (come l'user agent e altri ancora, per far apparire la richiesta come da un browser vero e proprio), ma non è cambiato alcunché.
    (Provando con un client HTTP per l'esecuzione di API, ho notato che comunque questi indirizzi web restituiscono tranquillamente il loro codice HTML anche senza user-agent.)

    Non riesco a capire quale sia il problema: devo abilitare qualcosa di particolare nel file di configurazione del server?
    Devo reperire tutte le risorse lato server?
    C'è qualche limitazione con l'hosting di Altervista di cui non sono a conoscenza?

    Grazie in anticipo per la cortese attenzione.

    Distinti saluti

  2. #2
    frasidipace non è connesso AlterGuru 2500
    Data registrazione
    07-05-2010
    Messaggi
    2,650

    Predefinito

    Salve,
    ha provato abilitando le connessioni server to server?

    Saluti

  3. #3
    Data registrazione
    06-08-2019
    Messaggi
    10

    Predefinito

    Salve a Lei.

    Sì, l'ho fatto ieri, ma il risultato non è cambiato.
    Sembra un problema a monte.

    Proprio nella stessa pagina dove è possibile estendere le connessioni Server-a-Server, si trova questo avviso:

    "Ogni applicativo installato nel tuo spazio web ha la possibilità di instaurare connessioni http verso l'esterno usando la funzione fsockopen() di php o le librerie cURL."

    Ciò significa che OGNI connessione verso altri indirizzi/server vanno effettuati per forza lato server?

    Non si possono eseguire connessioni lato client con Javascript?

    Saluti

  4. #4
    frasidipace non è connesso AlterGuru 2500
    Data registrazione
    07-05-2010
    Messaggi
    2,650

    Predefinito

    Credo sia preferibile attendere una rispota dallo staff se vi sono limitazioni da questo punto di vista.

    Saluti

  5. #5
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,306

    Predefinito

    Visto che stiamo parlando di XMLHttpRequest, tutto avviene lato browser, quindi non ci sono settaggi su AlterVista che possano influire. Le "Connessioni server-to-server" non sono collegate al tuo problema. Se però stai facendo richieste verso altri siti, ci possono essere dei limiti attorno al "Cross-Origin Resource Sharing¹", dove l'altro sito non acconsente alla richiesta via Javascript.

    Ti suggerirei due cose:
    - non usare l'antico XMLHttpRequest (~2006), bensì il più moderno Fetch² (~2015); fa le stesse cose con un'interfaccia più semplice³
    - carica una paginetta minima come esempio e postane l'indirizzo qua, così abbiamo qualcosa di concreto da investigare

    Ricorda inoltre che JavaScript è più fragile e meno affidabile, il più delle volte, di codice lato server.

    [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
    [2] https://developer.mozilla.org/en-US/docs/Web/API/fetch
    [3] https://github.com/mdn/fetch-example...est/index.html


    [EDIT]
    Guardando il sorgente del tuo sito ho scovato il JavaScript in questione. Ho aperto la console (Ctrl-Shift-I in Firefox) e come sospettavo si legge:
    Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://www.gazzettaufficiale.it/. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 200.
    La configurazione del sito che stai contattando non ti permette di caricare i suoi contenuti via JavaScript. Puoi farlo lato server, ma non nel browser.
    Ultima modifica di dreadnaut : 15-06-2022 alle ore 21.32.06 Motivo: Scoperto l'inghippo

  6. #6
    Data registrazione
    06-08-2019
    Messaggi
    10

    Predefinito

    La ringrazio molto, scusi se non Le ho potuto rispondere prima.

    Sì, anch'io avevo intuito che ci fosse qualche problema a monte, anche se non sapevo cosa di preciso.
    Poco male, agirò lato server e inoltre cercherò di abituarmi alle Fetch API, sebbene le mie abitudini fossero diverse.

    Distinti saluti

  7. #7
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,306

    Predefinito

    Nessun problema, e nessuna urgenza. Sempre un progetto interessante, facci sapere come va a finire.

    (e non darmi del Lei maiuscolo, mi fa sentire un paio di secoli nel passato )

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •