monazilla/develop/access
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
#topicpath
*サーバへのアクセス
サーバへのアクセス、ファイルの取得に関する説明。
HTTPに関する一般的な説明は省略します。
#contents
(06/08/31)
**リクエスト
***&aname(User-Agent){User-Agent};
'''Monazilla/1.00 (ブラウザ名/バージョン)'''
という形式を強く推奨します。
一時期において'''Monazilla'''のUser-Agentのみがdat読みを...
なお、2ちゃんねるビューア(●)の使用時には、これとは別に指...
***&aname(Accept-Encoding){Accept-Encoding};
gzipの対応を強く推奨します。
転送量が問題になった時から、2chブラウザはgzipで圧縮された...
HTTPリクエストに'''Accept-Encoding: gzip'''を加えると、サ...
解凍する手間はかかりますが、できるだけ対応させてください。
ただし、差分取得時には使えません。
転送量問題が一段落したあと、圧縮の際のサーバ負荷も考慮す...
しかしこれは、サーバ側で圧縮の可否を設定できますので、サ...
クライアント側は、どちらにも対応できるようにしておけば良...
***&aname(If-Modified-Since){If-Modified-Since};
前回のアクセス時のレスポンスにあった[[Last-Modified>#Last...
更新が無い時に、無駄にデータ転送を行う事を防ぎます。
datの差分取得時には、ほぼ必須となります。
詳細は[[Range>#Range]]の項にて。
***&aname(Range){Range};
差分取得を行う時に必要です。
既得サイズが1000バイトとするなら、
'''bytes=1000-'''
とすることで、新たに追加された部分だけを取得できます。
この時、追加されたデータが無かった場合、部分取得失敗の[[...
この'''416'''は、レス削除等でdatファイルが既得分より小さ...
そこで、[[If-Modified-Since>#If-Modified-Since]]を使用す...
ただし、削除があっても、datサイズが既得分より小さくならな...
削除を検出する方法としては、(先の例で)'''bytes=999-'''...
datは1行1レスですので、既得分の最後の1バイトをもう一度取...
(サイズが変わった後も、偶然に改行コードになってしまう事...
なお、この場合でも、[[If-Modified-Since>#If-Modified-Sinc...
ただ、更新時には通常より毎回1バイト多く転送が行われるので...
**レスポンス
***&aname(Status-Code){ステータスコード};
2chでは、ファイルが無い時は大抵'''302'''になります。
ただし、'''404'''等になることが絶対にないわけではありませ...
また、他のサイトも含めれば一様ではないでしょう。
決め撃ちは避け、HTTP一般の仕様に沿うようにした方が良いで...
***&aname(Last-Modified){Last-Modified};
ファイルの更新日時です。
[[If-Modified-Since>#If-Modified-Since]]や[[Range>#Range]...
***&aname(Content-Encoding){Content-Encoding};
データがgzip圧縮されている時に'''gzip'''が付きます。
[[Accept-Encoding>#Accept-Encoding]]の項で説明しているよ...
***&aname(Transfer-Encoding){Transfer-Encoding};
HTML化された過去ログでは'''chunked'''になることがあります。
対応しておきましょう。
終了行:
#topicpath
*サーバへのアクセス
サーバへのアクセス、ファイルの取得に関する説明。
HTTPに関する一般的な説明は省略します。
#contents
(06/08/31)
**リクエスト
***&aname(User-Agent){User-Agent};
'''Monazilla/1.00 (ブラウザ名/バージョン)'''
という形式を強く推奨します。
一時期において'''Monazilla'''のUser-Agentのみがdat読みを...
なお、2ちゃんねるビューア(●)の使用時には、これとは別に指...
***&aname(Accept-Encoding){Accept-Encoding};
gzipの対応を強く推奨します。
転送量が問題になった時から、2chブラウザはgzipで圧縮された...
HTTPリクエストに'''Accept-Encoding: gzip'''を加えると、サ...
解凍する手間はかかりますが、できるだけ対応させてください。
ただし、差分取得時には使えません。
転送量問題が一段落したあと、圧縮の際のサーバ負荷も考慮す...
しかしこれは、サーバ側で圧縮の可否を設定できますので、サ...
クライアント側は、どちらにも対応できるようにしておけば良...
***&aname(If-Modified-Since){If-Modified-Since};
前回のアクセス時のレスポンスにあった[[Last-Modified>#Last...
更新が無い時に、無駄にデータ転送を行う事を防ぎます。
datの差分取得時には、ほぼ必須となります。
詳細は[[Range>#Range]]の項にて。
***&aname(Range){Range};
差分取得を行う時に必要です。
既得サイズが1000バイトとするなら、
'''bytes=1000-'''
とすることで、新たに追加された部分だけを取得できます。
この時、追加されたデータが無かった場合、部分取得失敗の[[...
この'''416'''は、レス削除等でdatファイルが既得分より小さ...
そこで、[[If-Modified-Since>#If-Modified-Since]]を使用す...
ただし、削除があっても、datサイズが既得分より小さくならな...
削除を検出する方法としては、(先の例で)'''bytes=999-'''...
datは1行1レスですので、既得分の最後の1バイトをもう一度取...
(サイズが変わった後も、偶然に改行コードになってしまう事...
なお、この場合でも、[[If-Modified-Since>#If-Modified-Sinc...
ただ、更新時には通常より毎回1バイト多く転送が行われるので...
**レスポンス
***&aname(Status-Code){ステータスコード};
2chでは、ファイルが無い時は大抵'''302'''になります。
ただし、'''404'''等になることが絶対にないわけではありませ...
また、他のサイトも含めれば一様ではないでしょう。
決め撃ちは避け、HTTP一般の仕様に沿うようにした方が良いで...
***&aname(Last-Modified){Last-Modified};
ファイルの更新日時です。
[[If-Modified-Since>#If-Modified-Since]]や[[Range>#Range]...
***&aname(Content-Encoding){Content-Encoding};
データがgzip圧縮されている時に'''gzip'''が付きます。
[[Accept-Encoding>#Accept-Encoding]]の項で説明しているよ...
***&aname(Transfer-Encoding){Transfer-Encoding};
HTML化された過去ログでは'''chunked'''になることがあります。
対応しておきましょう。
ページ名: