2010-11-06 8 views
0

j'ai une page avec rien mais cette forme:formulaires HTTP de base affichant

<form method="post" action="/sign-in"> 
    <input type="text" id="username" /> 
    <input type="password" id="password" /> 
    <input type="submit" /> 
</form> 

Après avoir entré des valeurs dans « usernamed » et « mot de passe », lorsque le formulaire est transmis via le bouton d'envoi, je reçois cet en-tête HTTP:

POST http://localhost:12339/sign-in HTTP/1.1 
Host: localhost:12339 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12)... 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-us,en;q=0.5 
Accept-Encoding: gzip,deflate 
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive: 115 
Connection: keep-alive 
Referer: http://localhost:12339/ 
Cookie: Authorization=test 
Content-Type: application/x-www-form-urlencoded 
Content-Length: 0 

Ma question est, pourquoi pas le champ formulaire « nom d'utilisateur » et « mot de passe » valeurs étant affiché dans le contenu du message HTTP?

Répondre

3

Lors de l'envoi de données de formulaire, les noms sont extraits de l'attribut name et non du id. Essayez ceci:

<form method="post" action="/sign-in"> 
    <input type="text" name="username" /> 
    <input type="password" name="password" /> 
    <input type="submit" /> 
</form> 

Ou, si vous avez besoin id pour quelque chose d'autre:

<form method="post" action="/sign-in"> 
    <input type="text" id="username" name="username" /> 
    <input type="password" id="password" name="password" /> 
    <input type="submit" /> 
</form>