Buongiorno a tutti.
Vorrei se possibile che qualcuno mi facesse capire cosa avviene quando lancio un 401 al browser
quali sono i codici che devo mandare, mi spiego meglio se riesco
quando da client (browser) mi collego ad un dispositivo es: 192.168.2.100 questo (chiamiamolo miniserver) mi manda un codice 401 con queste linee di programma
client.println("HTTP/1.0 401 Authorization Required");
client.println("WWW-Authenticate: Basic realm="user-pass test"");
client.print(code, DEC);
client << F(" OK\r\n");
ora sul browser ho il popup con le 2 righe da riempire e ottengo questo header lato server
New request: GET /test.htm HTTP/1.1
Returning code ... 401
Host: 192.168.2.100
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: it-it,it;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
ora se premo ok inserendo una pass sbagliata
Host: 192.168.2.100
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: it-it,it;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Authorization: Basic *********= < relativa chiave codificata sbagliata
Se invece premo annulla anche con caselle vuote mi carica la pagina lo stesso come se fosse un ignora, invece vorrei riconoscerlo e aprire una pagina di "login incorrect"
Se inserisco le chiavi giuste funziona, ma le chiede 2 volte prima di aprire il file htm corretto
Ora chiedo quali sono le sequenze di codici corretti tra client e server ? cosa accade dopo che ho mandato un 401? cosa mi devo aspettare dal browser e che codice devo mandare in risposta?
Non ho librerie nulla, devo costruire le richieste e scomporre le risposte carattere per carattere estraendo le parti che mi interessano, non è questo il problema, chiedo più che altro cosa devo dire e cosa devo leggere
Grazie in anticipo
Saluti


Rispondi quotando