No.3ベストアンサー
- 回答日時:
HTTPヘッダの長さが決まっていないのは
他の方の回答の通りです。
背景的なところを説明すると、
アプリケーション層の部分(この前、カプセル化の質問にあった、はてなのブログのアプリケーションデータの部分)は
テキスト形式とバイナリ形式があります。
テキスト形式の場合はヘッダサイズは不定で、バイナリ形式の場合は決まっています。
httpはテキスト形式です。
httpのヘッダ例としては下記リンクの3番目の図などになりますが、
https://viral-community.com/other-it/http-1873/
GETや200OKのような最初の行以外は、
”Date:”や”User-agent:”のような":(コロン)"付きの文字列で始まっています。
httpサーバやクライアントはこれらの文字列を検索などで取り出し、
データを処理します。
ヘッダは実は、サーバやクライアントが処理のとっかかりにする情報です。
テキストの場合は、文字列検索などでその情報を取り出すため、
ヘッダの形式の厳密さは低く、長さも影響しません。
一方で、バイナリ形式の例としてはRadiusプロトコルがありますが、
https://milestone-of-se.nesuke.com/l7protocol/ra …
2番め図にRadiusのヘッダフォーマットがありますが、
例のようにヘッダサイズは決まっています。
例だと、Code(1byte)、Identifier(1byte)、Length(2byte)、Authenticator(16byte)で計20byte。
21byte目からはRadius認証用のデータです。
バイナリ形式の場合、プログラムは先頭から何バイト目のような形で取っ掛かりを取り出すので、
ヘッダの形式は厳密で、長さも処理に影響します。
なので長さが決まっている場合がほとんどです。
以上、参考になりますでしょうか。
この回答へのお礼
お礼日時:2019/08/07 19:16
ご回答いただきありがとうございます。
HTTPヘッダの中身もコロンの意味も検索方法も、何も知りませんでした。
とても勉強になりました。
ありがとうございました。
No.2
- 回答日時:
固定長ではなく不定長です。
どのようなヘッダー行を使用しそこにどのような情報を載せるかによります。
https://developer.mozilla.org/ja/docs/Web/HTTP/H …
参考まで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ヘッダのinclude順
-
perlでHTTP Request Headersの...
-
月の第一週とは
-
1日1回しかアクセスできないページ
-
よくある 『 第○(1・2・3・4・...
-
曜日と曜の使い分けがわかりま...
-
エクセルで相対パスの書き方を...
-
エクセルで毎月第2週日の水曜日...
-
アンケートなどの1日1回の投...
-
6月の第2 第4火曜日は何日...
-
apacheで403を404のように見せる
-
cgiとplとpm
-
曜日を求めるプログラムはどう...
-
曜日派?日付派??
-
毎週同じ曜日にラブホに行くと...
-
DBを10件毎に表示ページング...
-
時計の曜日がいつのまにか違う
-
クライアントのIPとマシン名を...
-
CGI.pmとcgi-lib.plの差異につ...
-
CGIの中にinclude
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数ヘッダ?
-
リストコントロールの列幅を固...
-
VBAでExcelのヘッダーに文字列+...
-
ヘッダのinclude順
-
メールをPDF化する際に、ヘッダ...
-
HTTPリクエストがネットワーク...
-
perlでHTTP Request Headersの...
-
SpreadDesignerの列ヘッダ
-
AccessVBAで「このフィールドに...
-
[C#]ListView一覧表示時の幅設...
-
TCPヘッダのチェックサム算出方法
-
LinuxでRTPヘッダを作りたいの...
-
C# クッキーを使ってウェブブ...
-
ログイン後・・・
-
バイナリファイルのアップロー...
-
IPアドレスの確認方法
-
HTTPヘッダの大きさ
-
PerlでのHTTPヘッダのStatus変更
-
ftpでのネットワークバイトオー...
-
perl5について
おすすめ情報