2016-12-28 11 views
0

GoのHTMLフォームから値を読み取る際に問題があります。何らかの理由で、私のAuth_loginハンドラの値 'user'は、私が下のフォームに記入して「submit」ボタンを押しても、常に空です。投稿後のフォームの値が空白

func Auth_login(w http.ResponseWriter, r *http.Request) { 
    r.ParseForm() 
    user := r.PostFormValue("username") 
    // Other actions here 
} 

関連フォーム(スリム形式):しようとしたとき

form action=/login method=post 

    br 
    | Name: 
    br 
    input#username type=text 

    br 
    | Password: 
    br 
    input#password type=password 

    br 
    input type=submit 
    a href=/login Cancel 

私が何か間違ったことをやっている/ログインURLがHTTP POSTメソッドによって呼び出されたときに呼び出され

ハンドラHTMLフォームフィールドを読むには?

+0

方法を掲示=

フォームアクション= /ログイン方法 'ParseForm'は、エラー値を返します。それは 'nil'ですか?それは何ですか? –

+0

エラーは返されません。 dingalingchickenwiing

+0

私はそれを理解しました。私はテキストボックスのID値を設定していましたが、 '名前'の値は設定していませんでした。一度それを設定すると、私はフォームを解析することができました!空の文字列を返すのは不思議ではありません! – dingalingchickenwiing

答えて

1

私は他のウェブサイトのソースコードを見て答えを見つけました。誰かが同様の問題を抱えている場合は、Goで解析したいテキストボックスに「名前」の値を追加して修正しました。例えば、上記のスリムコードは、このなる:

br 
| Name: 
br 
input#username type=text name=username 

br 
| Password: 
br 
input#password type=password name=password 

br 
input type=submit 
a href=/login Cancel 
関連する問題