Visualizzazione dei risultati da 1 a 10 su 32

Hybrid View

  1. #1
    Guest
    Registrato dal
    Jun 2012
    residenza
    Espoo, Finland
    Messaggi
    286
    Se ricevi uno status code diverso da 401 quando la sessione e' gia' scaduta/sei logged out, bisognerebbe controllare la parte server side perche' non e' normale che lo status code sia 200 se tenti di accedere ad una risorsa protetta senza autenticazione.

  2. #2
    Quote Originariamente inviata da Little Hawk Visualizza il messaggio
    Se ricevi uno status code diverso da 401 quando la sessione e' gia' scaduta/sei logged out, bisognerebbe controllare la parte server side perche' non e' normale che lo status code sia 200 se tenti di accedere ad una risorsa protetta senza autenticazione.
    Ti rispondo cos� : via Ajax accedo alla pagina, viene fatto il controllo via PHP se la sessione � attiva, non essendo la sessione attiva richiama la pagina di login; solo che la richiama dentro il div come risposta alla chiamata Ajax! Ma � logico e ci sta ed � il problema che ho !

    Detto questo, mi potete aiutare a controllare se la sessione � attiva prima della chiamata Ajax ? Pervpiacere? Non mi servono congetture solo come si scrive il codice tutto qua!


    grazie!

  3. #3
    Guest
    Registrato dal
    Jun 2012
    residenza
    Espoo, Finland
    Messaggi
    286
    Quote Originariamente inviata da manuel81pd Visualizza il messaggio
    Ti rispondo cos� : via Ajax accedo alla pagina, viene fatto il controllo via PHP se la sessione � attiva, non essendo la sessione attiva richiama la pagina di login; solo che la richiama dentro il div come risposta alla chiamata Ajax! Ma � logico e ci sta ed � il problema che ho !

    Detto questo, mi potete aiutare a controllare se la sessione � attiva prima della chiamata Ajax ?
    Normalmente questo genere di cose si gestisce nel modo che ti ho gia' suggerito, cioe' controllando lo status code del response dell'AJAX request e se questo e' 401 fare redirect, con JavaScript, alla pagina di login. Con questo si assume che la pagina server side che risponde alla AJAX request non faccia nessun redirect se la sessione e' scaduta e ritorni semplicemente un 401. Questa e' la normale procedura per questo genere di cose.


    Non mi servono congetture solo come si scrive il codice tutto qua!
    Io sto provando ad aiutarti ma se le mie "congetture" non ti vanno bene allora aspetta che risponda qualcun altro.

  4. #4
    Quote Originariamente inviata da Little Hawk Visualizza il messaggio
    Normalmente questo genere di cose si gestisce nel modo che ti ho gia' suggerito, cioe' controllando lo status code del response dell'AJAX request e se questo e' 401 fare redirect, con JavaScript, alla pagina di login. Con questo si assume che la pagina server side che risponde alla AJAX request non faccia nessun redirect se la sessione e' scaduta e ritorni semplicemente un 401. Questa e' la normale procedura per questo genere di cose.




    Io sto provando ad aiutarti ma se le mie "congetture" non ti vanno bene allora aspetta che risponda qualcun altro.
    Abbi pazienza, non volevo essere scortese ma mi serve il codice! Non so come scriverlo! Questo chiedo!

  5. #5
    Guest
    Registrato dal
    Jun 2012
    residenza
    Espoo, Finland
    Messaggi
    286
    Quote Originariamente inviata da manuel81pd Visualizza il messaggio
    Abbi pazienza, non volevo essere scortese ma mi serve il codice! Non so come scriverlo! Questo chiedo!
    Ricapitolando:

    1. La pagina che risponde alla richiesta AJAX deve ritornare un 401 se la sessione e' scaduta. Puoi postare il codice di questa pagina cosi' vediamo un po' perche' non ritorna un 401 in questo caso? Se non ho capito male hai detto che lo status code e' invece 200.

    2. Quando la richiesta risulta in un 401 allora cambia la location con la pagina di login:

    codice:
    $.ajax({
      ...
      error: function(xhr, desc, err) {
        if (xhr.status === 401) {
          location.href = "/pagina-di-login";
        } else {
          // Per es. 422 nel caso di validazione del form fallita
          // in questo caso visualizzare messaggi di errore etc.
        };
      }
    });

    3. Potresti anche fare in modo che cio' accada per tutte le richieste AJAX con qualcosa del genere:

    codice:
    $(document).ajaxError(function(event, xhr, settings, exception) {
      if (xhr.status === 401) {
        location.href = "/pagina-di-login";
      };
    });

  6. #6
    Abbi pazienza, vuoi vedere il codice della pagina in php che controlla la sessione?

  7. #7
    Guest
    Registrato dal
    Jun 2012
    residenza
    Espoo, Finland
    Messaggi
    286
    Quote Originariamente inviata da manuel81pd Visualizza il messaggio
    Abbi pazienza, vuoi vedere il codice della pagina in php che controlla la sessione?
    Si'

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.