Files
2016-10-17 08:04:39 +09:00

26 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 4 フォーム
フォームは普段Webアプリケーションを書く時によく使われるツールです。フォームを通して便利にユーザにサーバとデータをやり取りさせることができます。以前にWeb開発をしたことのあるユーザにとってはフォームはとてもお馴染みのものです。しかしC/C++のプログラマからすると少々取っ付きにくいかもしれません。フォームとは一体何でしょうか?
フォームは表の要素を含むエリアです。フォームの要素はユーザがフォームの中で(例えば、テキストフィールド、コンボボックス、チェックボックス、セレクトボックス等です。)情報を入力する要素です。フォームはフォームタグ(\<form\>)で定義します。
<form>
...
input 要素
...
</form>
Goではformの処理に簡単な方法が既に用意されています。Requestの中にformを専門に処理するものがあり、簡単にWeb開発に利用できます。4.1節の中でGoがどのようにフォームの入力を処理するかご説明します。いかなるユーザの入力も信用はできないので、これらの入力に対し検証を行う必要があります。4.2節では一般的にどのように検証を行うか、細かいデモンストレーションを行います。
HTTPプロトコルはステートレスなプロトコルです。ではどのようにして一人のユーザを同定するのでしょうかまた、フォームが複数回送信されてしまわないように保証するにはどうするのでしょうか4.3と4.4節ではcookie(cookieはクライアントに保存される情報です。HTTP Headerを通してサーバーとやり取りされます等をより詳しくご紹介します。
フォームにはもうひとつファイルをアップロードできるという大きな機能があります。Goはファイルのアップロードをどのように処理しているのでしょうか大きなファイルをアップロードする際効率よく処理するにはどうすればよいでしょうか4.5節ではGoによるファイルのアップロード処理の知識を一緒に勉強します。
## 目次
![](images/navi4.png?raw=true)
## links
* [目次](<preface.md>)
* 前へ: [第三章まとめ](<03.5.md>)
* 次へ: [フォームの入力を処理する](<04.1.md>)