Webを支える技術 ―― HTTP,URI,HTML,そしてREST

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2021年4月28日最終更新)

以下,第1刷から第15刷まで。
第16刷以降では修正済み

P.145 下から7行目

Cache-Control: max-age: 86400
Cache-Control: max-age=86400

P.348 「Cache-Control」の3行目

max-age: xxxxx
max-age=xxxxx

(以下2020年6月17日更新)

以下,第1刷から第13刷まで。
第14刷以降および最新の電子版では修正済み

P.109 5行目

しかし、/latestというエイリアスリソースではく、
しかし、/latestというエイリアスリソースでは

(以下2019年4月16日更新)

以下,第1刷から第11刷まで。

P.161 7行目

http://www.w3.org/1995/Atom
http://www.w3.org/2005/Atom

(以下2019年8月23日更新)

以下,第1刷から第8刷まで。
第9刷以降および最新の電子版では修正済み

P.165 表10.4

sub上付き文字
sup下付き文字
sup上付き文字
sub下付き文字

P.24 下から8行目

1台のPCにインストールできるだけのデータしか扱えせん。
1台のPCにインストールできるだけのデータしか扱えせん。

P.127 注2

メールプトロコル
メールプロトコル

P.139

メソッドとURIのパスを「:」で連結し。MD5ハッシュ値を求める
メソッドとURIのパスを「:」で連結しMD5ハッシュ値を求める

P.165

画像埋め込みなど表現します。
画像埋め込みなど表現します。

以下,第1刷から第6刷まで。
第7刷以降および最新の電子版では修正済み

P.77 本文の下から4行目


GET http://example.jp/test HTTP/1.1

リクエストURIにパスを用いた場合はHostヘッダが必須ですが、絶対URIを用いた場合はHostヘッダを省略できます。HTTP1.1の場合はリクエストURIの形式はどちらでもかまわないのですが(注7)、本書では紙幅を節約するため相対URIを用います。

GET http://example.jp/test HTTP/1.1
Host: example.jp

Hostヘッダは必須です。HTTP1.1の場合はリクエストURIの形式はパスでも絶対URIでもかまわないのですが(注7)、本書では紙幅を節約するためパスを用います。

以下,第1刷から第5刷まで。
第6刷以降および最新の電子版では修正済み

P.155の3行目,およびP.365の右段1行目

<navi>要素
<nav>要素

以下,第1刷と第2刷のみ。
第3刷以降および最新の電子版では修正済み/h4>

P.19 「RESTの誕生」の4行目

Webの創世記
Webの創成期

P.77 13行目


GET /search?q=test&debug=true#n10 HTTP/1.1


GET /search?q=test&debug=true HTTP/1.1

P.77 15行目

リクエストラインにはパス以降の文字列が入ります。
リクエストラインにはURIフラグメントを除いたパス以降の文字列が入ります。URIフラグメントはクライアント側で処理するのでリクエストメッセージには含めません。

P.99 「_methodパラメータ」の7行目


<input type="hidden" id="_method" value="PUT">


<input type="hidden" id="_method" name="_method" value="PUT"/>

P.164 9行目


<input type="text" id="q"/>
<input type="submit" value="検索"/>


<input type="text" id="q" name="q"/>
<input type="submit" id="submit" name="submit" value="検索"/>

P.169 下から4行目


<input type="text" id="q"/>
<input type="submit" value="検索"/>


<input type="text" id="q" name="q"/>
<input type="submit" id="submit" name="submit" value="検索"/>

P.171 10行目


<p>題名:<input type="text" id="title"/><br/>
   著者:<input type="text" id="author"/><br/>
  <input type="submit" value="検索"/></p>


<p>題名:<input type="text" id="title" name="title"/><br/>
   著者:<input type="text" id="author" name="author"/><br/>
  <input type="submit" id="submit" name="submit"</p>

P.202 下から7行目


ref="tag:example.org,2010:1"


ref="tag:bbs.example.jp,2010:1"

P.221 3行目

特に、クライアントが送信している<update>要素が、取得してきた時刻と同じであることに注意してください。<update>要素や
特に、クライアントが送信している<updated>要素が、取得してきた時刻と同じであることに注意してください。<updated>要素や

P.211 6行目


<link rel="next-archive" href="http://blog.example.org/201009.atom"/>
<link rel="prev-archive" href="http://blog.example.org/201007.atom"/>
<link href="http://example.org/201008/32"/>


<link rel="next-archive" href="http://blog.example.jp/201009.atom"/>
<link rel="prev-archive" href="http://blog.example.jp/201007.atom"/>
<link href="http://example.jp/201008/32"/>

P.260 13行目


<p><a href="http://zip.ricollab.jp/search?q=112&page=2"


<p><a href="http://zip.ricollab.jp/search?q=112&amp;page=2"

P.264 下から10行目


<input id="q" type="text"/>
<input type="radio" name="type" value="json"> JSON,
<input type="radio" name="type" value="html"> XHTML
<input type="submit" value="検索"/>


<input id="q" name="q" type="text"/>
<input type="radio" id="type1" name="type" value="json"/> JSON,
<input type="radio" id="type2" name="type" value="html"/> XHTML
<input type="submit" id="submit" name="submit" value="検索"/>

以下,第1刷のみ。
第2刷以降および最新の電子版では修正済み

P.88 表7.1の下から2行目

プロキシ動作の確認
自分宛にリクエストメッセージを返す(ループバック)試験

P.98 「POSTでPUT/DELETEを代用する方法」の6行目


<form action="GET" target="/list">


<form method="GET" action="/list">

P.98 「POSTでPUT/DELETEを代用する方法」の10行目


<form action="POST" target="/list">


<form method="POST" action="/list">

P.99 「_methodパラメータ」の6行目


<form target="/list/item1" action="post">


<form method="POST" action="/list/item1">

P.132 本文の下から4行目

この例の場合、text/html、application/xhtml+xml、application/xmlの3つが0.9という優先度で、それ以外のすべてのメディアタイプ(*/*)が0.8という優先度です。
この例の場合、text/html、application/xhtml+xmlがデフォルトの1、application/xmlが0.9、それ以外のすべてのメディアタイプ(*/*)が0.8という優先度です。

P.133 「Accept-Charset ── 処理できる文字エンコーディングを伝える」の3行目


Accept-Charset: Shift_JIS;utf-8;q=0.7,*;q=0.7

 この例ではShift_JISとUTF-8およびそれ以外のすべてのエンコーディング方式が優先度0.7で並んでいますが、Shift_JISとUTF-8のほうがより具体的であるため、こちらの2つを優先します。

Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7

 この例ではShift_JISと、Accept-Charsetヘッダのデフォルト文字エンコーディングISO8859-1がqvalueのデフォルト値である優先度1になりますが、より具体的なShift_JISを優先します。これらに続いて、UTF-8およびそれ以外のすべてのエンコーディング方式が0.7の優先度となります。

P.133 下から2行目

この例では日本語(ja)とアメリカ英語(en-us)が優先度0.7で、地域を特に指定しない英語(en)が優先度0.3で続きます。
この例では日本語(ja)がデフォルトの1、アメリカ英語(en-us)が0.7、地域を特に指定しない英語(en)が0.3という優先度です

P.169 下から6行目


<form target="http://example.jp/search" action="GET">


<form method="GET" action="http://example.jp/search">

P.170 7行目

ターゲットURIは<form>要素のtarget属性で指定します。
ターゲットURIは<form>要素のaction属性で指定します。

P.170 10行目

そのときに用いるメソッドは<form>要素のaction属性で指定します。
そのときに用いるメソッドは<form>要素のmethod属性で指定します。

P.170 13行目

action属性の値がGETの場合、
method属性の値がGETの場合、

P.171 4行目

action属性の値がPOSTの例を見てみましょう。
method属性の値がPOSTの例を見てみましょう。

P.171 9行目


<form target="http://example.jp/article" action="POST">


<form method="POST" action="http://example.jp/article">

P.171 16行目

action属性がPOSTの場合、
method属性がPOSTの場合、

P.209 最下行

※fistとlastは、RFC 5005ではなく、Atomの仕様策定後にIANAに提案されたリンク関係
※firstとlastは、RFC 5005ではなく、Atomの仕様策定後にIANAに提案されたリンク関係

P.324 11行目


Allow: GET, POST, HEAD, OPTIONS


Allow: GET, POST, HEAD