- 1 名前: ◆gfD86vH6Zo [03/07/04 23:32]
- 2ちゃんねる専用のブラウザを作っちゃおう
というプロジェクトです。 [前スレ1より] Part 1 pc.2ch.net/test/read.cgi/tech/981726544/ Part 2 pc.2ch.net/test/read.cgi/tech/1005282763/ Part 3 pc3.2ch.net/test/read.cgi/tech/1012544484/ Part 4 pc2.2ch.net/test/read.cgi/tech/1042432238/ monazilla.org (w www.monazilla.org/
- 830 名前:デフォルトの名無しさん [2008/01/13(日) 02:59:27 ]
- age
- 831 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 15:05:57 ]
- PSPから書き込み
- 832 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 15:22:41 ]
- もう一度
- 833 名前:デフォルトの名無しさん [2008/01/24(木) 15:43:58 ]
- しつこく
改行 テスト
- 834 名前:名なし mailto:sage [2008/01/24(木) 16:02:08 ]
- あ
か さ
- 835 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 16:07:03 ]
- たなは
- 836 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 17:12:22 ]
- ここにも貼り
foo-bar-web.hp.infoseek.co.jp/2chpsp.html PSP用のmonazillaです
- 837 名前:デフォルトの名無しさん mailto:sage [2008/01/25(金) 10:11:38 ]
- おぉ、乙!
- 838 名前:デフォルトの名無しさん mailto:sage [2008/01/25(金) 16:54:51 ]
- てすと
- 839 名前:デフォルトの名無しさん [2008/02/10(日) 18:02:13 ]
- ただいまmonazilla.orgでは、記事を投稿して下さる方を募集しています。
2ちゃんねる専用ブラウザの開発者様は是非ご応募ください。 www.monazilla.org/index.php?e=105
- 840 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 23:50:54 ]
- >>839
目的は何?
- 841 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 02:39:39 ]
- >>840
monazilla.orgを盛り上げて、2chブラウザの世界も盛り上げるためでしょう。 >>839 宣伝で、一言ずつソフトウェア板の2chブラウザのスレに声をかけてみたら?
- 842 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 21:03:20 ]
- >>839
ここは技術的話題がメインだから >>841 が言うようにソフトウェア板の 例えば乱立スレとかに・・・んーそれはそれで問題が起きそうだな・・・
- 843 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 12:48:49 ]
- ………
- 844 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 13:25:20 ]
- 今まで動いていた●での過去ログ読み込みができなくなりました・・・
Firefoxでofflaw.cgiへのsid付きURLベタウチ&User-Agent:Monazilla/1.00 kage(1.00)だと きちんと読めました。 これと同じURLで自分のプログラムから送信しても -ERR もうつかえません となります。 User-Agentの指定、セッションのURLエンコード、他に何かミスりそうなことありますかね。
- 845 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 14:10:44 ]
- >>844
Firefoxでクッキー削除してみたらどうなるかな FirefoxアドオンのLive HTTP headersでリクエストとレスポンスを確認してみたら何かわかるかも
- 846 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:22:41 ]
- UTF8になるのかな・・・
datをUTF8にするのはどうだろうスレッド qb5.2ch.net/test/read.cgi/operate/1207973589/
- 847 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:32:29 ]
- 何か問題でも?>DATのUTF8化
- 848 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:32:13 ]
- 文字コードの変更だからめちゃくちゃ面倒だろ。
BE板のみがEUCになったときでも対策大変だったのに。
- 849 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 22:10:54 ]
- EUCはSjisに変換すれば良いだけだったけど、
UTF8はSjisに含まない文字もあるので大変 内部処理も表示も変えないと
- 850 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 22:54:24 ]
- 全部UTF-8に変換すればいいじゃない
- 851 名前:デフォルトの名無しさん [2008/04/13(日) 22:58:51 ]
- Windows9xのころからあるレガシーな開発環境だと
Unicodeまともに対応してないとかありえるけど Windows2000が登場して8年だし、もう仕方ないよな
- 852 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:14:55 ]
- 仕様変更するなら早い方がいい
後になればなるほど対応が大変になる
- 853 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:37:39 ]
- datサイズがどうなるとか、生きてるdatも変換してしまうのかとか、UTF8とSJISのdatが混在してしまうのかとか
過去ログはどうするのかとか、UTF8はUTF8専用のdatを用意するのかとか、古い専ブラ(開発が停止している専ブラ)を見捨ててしまうのかとか、 いろいろ問題があるようだからすぐにはやらないとは思うけどな
- 854 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 02:14:12 ]
- だがいつかはやらなきゃいけないことでもある
- 855 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 07:56:13 ]
- なんでやらなきゃいけないの?
- 856 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 13:31:44 ]
- 遅くなる前にというけど、もう十分手遅れだと思われ・・・
やるとしたら既存のは捨て、新たなシステムで、ということになるだろう。 文字コードよりも、もっと仕様固める方がいいな。 エラーとかわけわかめ。
- 857 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 14:13:16 ]
- 結局 >>846 のリンク先の話題は、専ブラ的にはまったく関係ない方向性で収束したっぽいね。
ひ(r 「dat を UTF-8 にしたい。read.js が使えるから。AAがまずい?」 stream 「UTF-8 にしてもAAは問題なし」 SunOs 「UTF-8 にしないと read.js が使えないって?IE6 では anydat.so でやってる」 ひ(r 「anydat.so って重くない?」 SunOs 「IE6 は捨てよう、JavaScript 周りが変だし」 stream 「Shift_JIS は腐っていやがる」 SunOS 「早すぎたんだ」 ひ(r 「anydat.so がなければ人大杉が無くなるんじゃ?」 SunOs 「別に anydat.so は重くない。read.js 全面移行できないのは IE6 が腐ってるから」 SunOs 「おいちゃんが『人大杉で read.html に振らないようにして欲しい』と言ってたし」 ひ(r 「ほいだら、人大杉のときは、read.htmlをデフォルトで動くようにしちゃってくださいー。」 #qb5.2ch.net/test/read.cgi/operate/1207973589/93 SunOs 「した」 … と思ったらまだ何かやるつもりか。 stream 「多言語扱えたほうが便利でしょ」 未承諾 「perl 処理方面は軽くなる?」 : : ひ(r 「文字コードを変えるとしたら、サーバ移転ごととかそんな感じすかね。」 #qb5.2ch.net/test/read.cgi/operate/1207973589/167 む 「UTF-8 にするなら、専ブラ的にも bbs.cgi 的にも SETTING.TXT でやるのがいいのでは?」 む 「2chの内部処理的な意味で」 む 「PC 方面は UTF-8 にしてもわりかし大丈夫そう。携帯方面はどうだろう?」 strem 「Shift_JIS の板と UTF-8 の板が混在するってこと?」 む 「混在するかどうかはともかく、bbs.cgi 的には両対応にしたい」 : :
- 858 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 15:03:11 ]
- 時期を指定して、これより以降に保存されるdatはすべてUTF-8で保存されます
と決めちまったらどうだ? これなら各ブラウザも余裕を持って対応改修できるだろ。
- 859 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 19:09:44 ]
- まあ、猶予期間は必要だわな
- 860 名前:デフォルトの名無しさん [2008/05/23(金) 06:26:47 ]
- あげ
- 861 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 15:24:30 ]
- さげ
- 862 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 15:47:47 ]
- サーバー型のブラウザを作ろうと思ってます
取得したDATをどの程度使っていいのか判断がつきません DATをDBに格納して使うって著作権に触れないんですかね?
- 863 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:10:12 ]
- >>862
個人でサーバーにスクリプトを設置する方式だったら問題ないと思うよ。 公開型だったらdat落ちと同時にDBから削除しなければ、怖い人から訴えられるかもね。 ノラp2やorz、讃岐などを参考にね。公式p2やべっかんこは参考にはできない。
- 864 名前:862 mailto:sage [2008/05/28(水) 11:32:27 ]
- >>863
公開型を考えています ・常識的な負荷/転送量にする(差分取得・gzip) ・dat落ちは即削除 この辺を守れば問題無いと考えてよさそうですね ありがとうございました
- 865 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 12:41:44 ]
- dat消さなくても問題ないだろ
過去ログ置き場とかいっぱいあるし
- 866 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 16:09:54 ]
- >>865
あれって厳密に言えばNGですよね?
- 867 名前:デフォルトの名無しさん [2008/05/28(水) 16:32:30 ]
- dat落ちしてないスレッドとdat落ちしたスレッドで扱いが違うなんてことはない。
どっちも著作権的には同じ。
- 868 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:17:00 ]
- 著作権ではなくて●の問題じゃないだろうか
dat落ちは運営の資金源にもなるわけで
- 869 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 17:20:31 ]
- >>864
人気が出たら常識的な負荷ではなくなるのが難しいところですが。 公式コンテンツになるか許可が下りれば問題はなくなりますがね。 >>867 当面の敵は著作権じゃない。 狐、root、ひろゆきだ。
- 870 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 18:01:29 ]
- とりあえず好きなように作ってみて
おこられたらまた考えればいいんじゃね?
- 871 名前:デフォルトの名無しさん [2008/05/28(水) 18:36:31 ]
- >>865の通りだ
問題はない
- 872 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 19:52:44 ]
- dat 落ちした物を公開するのに金が絡まなければ、とりあえず問題ないんじゃない?
むしろ、公開型の問題は「書き込み機能」があるか否かじゃないかな。 いわゆる非公式の公開 p2 は軒並み N.G. 喰らってるべ? 書き込み機能を持たせたいなら、そこはひ(r とかおいちゃんとかに相談じゃないかな?
- 873 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:25:51 ]
- ss.chbox.jp/
とりあえずここ見てる限りバーボンが問題だな。 バーボンの除外は運営と利害が一致しないと回避は無理。 書き込み機能はひろゆきの管轄だな。 そして狐による規制の嫌がらせを受けるw(公式p2の例)
- 874 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 12:53:19 ]
- >公開型の問題は「書き込み機能」
これは何故だろう 荒らされやすいとか、それを通り越してアタックされやすいとかそんな理由なのでしょうか
- 875 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 13:22:30 ]
- >>874
鯖管がしっかり管理してないと身元を隠して書き込みできるようになるから
- 876 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 21:18:35 ]
- >>874
大きく分けて問題点は二つかな。 ・せっかく2ch側でプロクシとか荒らし規制とかしているのに、そこから書き込み できるようでは意味が無い(まぁ、現状でも公式 p2 で似たようなケースはあるけど) → 現状、非公式な書き込み機能付き中間鯖は、のきなみ N.G. ・お上が「ログを出しなさい」と言ってきた場合、2ch -> 公開鯖管とお鉢がまわって くるけど、それへの事前の処理(ちゃんとログの管理をしているか)、対応。 → まぁ、ログさえちゃんとしていればいいだろうけど(それでも膨大な量になるかと) 特に一番目の問題は、なんとか許可を取り付けても、少なくとも常に2chと同等 レベルの規制機構・処理が必要になるから、できたとしても大変だと思うぞ。
- 877 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:30:09 ]
- ノラp2は公開プロキシと同じだからね。
書き込み責任者を割り出せなければ管理人の責任になるとの理屈かな。 公式p2はひろゆきの関連企業の業務になったから問題はないんだろう。
- 878 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:40:18 ]
- なるほど
書き込みは公式に飛ばすのが無難かもね
- 879 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 02:31:11 ]
- 公式p2はユーザ単位でのピンポイント制御できるからな
- 880 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 22:05:19 ]
- てs
- 881 名前:デフォルトの名無しさん [2008/07/18(金) 19:02:20 ]
- 勉強の為に専ブラ作ってるんですけど、dat⇒htmlって必要ですか?
てか表示部分はwebbrowser使うのが基本? richtextじゃダメ…ですよね…
- 882 名前:デフォルトの名無しさん mailto:sage [2008/07/18(金) 19:26:57 ]
- richtextでもかまわないだろ
- 883 名前:デフォルトの名無しさん mailto:sage [2008/07/18(金) 19:27:10 ]
- まて
dat->htmlが必要かどうかをこのスレで聞くことにどのくらい意義があるんだ?
- 884 名前:デフォルトの名無しさん mailto:sage [2008/07/18(金) 22:32:02 ]
- 出力なんてどうにでもなるだろうjk
- 885 名前:デフォルトの名無しさん mailto:sage [2008/07/21(月) 19:22:40 ]
- 好きなようにつくればいいのです。
- 886 名前:デフォルトの名無しさん mailto:sage [2008/07/21(月) 19:53:56 ]
- あ、レスついてた。
datからそのまま表示させるより、 html形式にしてから表示させるほうがいろいろ便利なのかなーと…。 まぁそれくらいもわからないほど知識ないって事です。すんません
- 887 名前:はらぐろ mailto:sage [2008/07/22(火) 08:26:24 ]
- 弱小ブラウザ開発のはらぐろとか言う者です。
サイト移転したんでmonazillaからのリンクも更新して欲しいので、 とりあえずここに書いておきます。 えくすちゃねらー www.optimize0.jp/proj_xchext/index.html
- 888 名前:デフォルトの名無しさん mailto:sage [2008/07/23(水) 23:12:00 ]
- >>887
monazilla.org/index.php?e=11 更新しました。 jbbs.livedoor.jp/bbs/read.cgi/computer/351/1194431903/ に他の記者さんがいることがあるので次回はこちらからもどうぞ。
- 889 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 01:28:35 ]
- ちなみに記者募集スレッドというのがあります
記者になればmonazillaを自分で編集できますよ ttp://jbbs.livedoor.jp/bbs/read.cgi/computer/351/1202384578/ >>886 richtextで作ったらスレに貼られたURLをクリックとか ポップアップ表示とか制御できない(し辛い)気が 勉強でどの程度のものを作るのかによりますが
- 890 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 14:06:58 ]
- しばらく考えてwebbrowserで作ってたけど、レスポップアップで挫折です。
本当にありがとうございました。 誰か障りだけでもヒントください
- 891 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 16:02:53 ]
- >>890
OpenJaneのソース嫁 cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/jane/
- 892 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 16:55:33 ]
- 高度すぎて&デルファイで意味不明だったオワタ。
とりあえず別の勉強します。thx
- 893 名前:はらぐろ mailto:sage [2008/07/25(金) 00:02:36 ]
- 変更ありがとうございました。
- 894 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 18:35:27 ]
- 保守ですまん
- 895 名前:名無しさんだよもん mailto:sage [2008/09/15(月) 23:50:40 ]
- プログラマー諸氏がんがれ!
- 896 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 22:00:17 ]
- イヤなんか今さら開発しても出尽くしてるし・・・みたいな・・・
- 897 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:46:16 ]
- rep2がもっとクライアントサイドによらんかなってのはある
スレ一覧のソートぐらいならJavascriptでできるんじゃないか、とか
- 898 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 12:24:32 ]
- さすが kage だ何ともないぜ… Cookies.txt の hana=mogera 系エントリが無限に増えそうで
怖いけど
- 899 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 23:37:21 ]
- DATの差分取得を試みているんですが、
If-Modified-Since: リモートDATの最終更新時刻(値は応答ヘッダのLast-Modifiedを調べる) Range: bytes=ローカルDATのファイルサイズ- の2つを要求ヘッダに入れることは必須ですか? それともRangeだけでも差分取得は出来ますか? 膨大な数のdatファイルごとにIf-Modified-Since値を記憶しておくのは管理が面倒です。 ローカルのDATファイルのサイズは簡単に調べられますのでRangeだけで差分取得 ができるのならプログラムはぐっと簡単になります。 age.s22.xrea.com/talk2ch/
- 900 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:19:40 ]
- あぼーんで減ったバイトと新たな書き込みで増えたバイトが
たまたま同じだった場合、rangeだけでどうする?
- 901 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:28:42 ]
- ローカルのdatファイルの最終更新日時を使うのじゃだめなの?
- 902 名前:899 mailto:sage [2008/09/30(火) 01:21:43 ]
- >>900
事前にsubject.txtをDLして各スレのレス数を解析しておこうと思っています。 これなら新たな書き込みがされればレス数が増えてるので、たまたまバイト数 が同じだった場合でもあぼーんを検知でき(実際何もDLされてこないわけですから) ると思います。 >>901 ローカル側のファイル更新時刻をif-Modified-Since型に変換できるなら それもありのような気がします。
- 903 名前:899 mailto:sage [2008/09/30(火) 01:28:28 ]
- ちょこちょこっとプログラムを組んでみたんですが、
if-Modified-Since を指定しないと差分取得は出来ないようですね。 いくら Range でローカル側のファイルサイズを申告しても 1からdatを再取得してしまうようです。 差分取得するならローカル側のファイルの更新時刻をどうにかして 調べて if-Modified-Since に収納してやらないとならないようです(´・ω・`)
- 904 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 01:48:26 ]
- Last-Modifiedだけでなく、ETagも見た方がいい
>>424とか参照
- 905 名前:899 mailto:sage [2008/09/30(火) 02:33:59 ]
- >>904
たとえばC#でLast-Modifiedを保存するには HttpWebRequest.LastModified でリモートファイルの更新時刻を取得することができ、 またデータのフェチの際は HttpWebRequest.IfModifiedSince に更新時刻を出力すればサーバーとやりとりできました。 ETagに関してサーバから取得、出力するにはどうしたらいいでしょうか? 出力に関しては HttpWebRequest.IfNoneMatch でETagをサーバーに送信できるようですが、ETagの取得に関しては どう操作すればいいか分かりません(´・ω・`)
- 906 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 05:08:15 ]
- ここで特定のフレームワークのこと聞かれてもな
まあ、普通に考えれば任意のヘッダを送受信する手段くらいあるはず 探せ
- 907 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 12:31:27 ]
- ETagにしろ更新日時にしろ応答ヘッダで返ってくるんだが
まずHTTPの資料を読むことを薦める あと、>>902の方法だと透明あぼーんしか検知できなくないか? subject.txtを毎回取得しにいく仕様もどうかと思うぞ
- 908 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 12:53:11 ]
- >膨大な数のdatファイルごとにIf-Modified-Since値を記憶しておくのは管理が面倒です。
そもそもこんなことを言ってる時点で(以下略 他の専ブラ参考にすれば? datと同名のidx作って管理するとか、データベース使うとか、datの扱いの基本中の基本でしょ。
- 909 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 13:01:47 ]
- たまにだけど、subject.txtのレス数と実際のレス数が違うことがあるから100%信用すると痛い目に遭いそう
秒単位の更新チェックは知らなかった・・・ツール更新しなきゃ
- 910 名前:899 mailto:sage [2008/09/30(火) 15:08:16 ]
- ETagはサーバーが返してくる値をローカルに保存しておかないといけないですか?
ローカルに保存したdatファイルからETag用の値を計算できればわざわざ ローカルにETag値を保存しておく必要は無くなると思うのですが。
- 911 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 15:35:24 ]
- じゃあそうすれば?
- 912 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 19:49:15 ]
- ローカルに ETag を算出…?どうやって?まさか「ETag 計算方法」とかでググって
出てくるものを実装して「たまたまそのとき一致したらからおk」とか思ってないよな?
- 913 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 20:55:40 ]
- 弱いETagならローカルで算出やつでも通用するんじゃない?
強いETagはまず不可能だろうけど
- 914 名前:899 mailto:sage [2008/09/30(火) 21:45:35 ]
- 話は変わりますが、サーバーにDATを要求し、返ってきたヘッダーに書かれた情報を見ようと
GetResponseHeader("Content-Range") という命令を書いてみたのですがなぜか何も取得できませんでした。 GetResponseHeader("Content-Length") GetResponseHeader("Content-Type") はきちんと値が返ってきました。 2chの鯖には変数"Content-Range"を返さないものがあるということでしょうか?
- 915 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 21:49:47 ]
- 送るヘッダが間違ってるだけだろ
- 916 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 22:05:37 ]
- 誰か多段ポップアップの方法をVBでお願いします。
あれはスキンとかに対応してjavascriptで実装したほうが簡単なのでしょうか…
- 917 名前:899 mailto:sage [2008/09/30(火) 22:47:34 ]
- もう一つヘッダがらみの質問です
2chでは転送量を抑えるためGZipで圧縮をかけたデータのやりとりを推奨 しているようです。そこで以下のように(言語はC#です)GZipフラグをヘッダ に付けてリクエストを出すようにしています。 webRequest.AutomaticDecompression = DecompressionMethods.GZip; ただこの方法だと差分取得で問題が発生してしまいました。 webRequest.AddRange( fileSize ); の fileSize の部分にローカルにDLしたDATファイル(GZip圧縮は解除され 平文のテキストファイルです)のファイルサイズを調べて指定したのですが、 どうやらGZipフラグを付けると AddRange で指定すべきファイルサイズは GZipで圧縮したときの容量ではないといけないようなんです。 ローカルのDATファイルのファイルサイズを指定すると416:RequestedRangeNotSatisfiable が返されてそれ以降DATを取得できなくなってしまいます。 GZipで差分データをやりとりするときは、GZip圧縮をかけた状態で受け取った DATのサイズを計測し、それを累積加算しながら AddRange でリクエストしない とデータは取得できないのでしょうか?DATファイルひとつごとにGZipで受け取った ときのサイズを累積加算してローカル側に記憶しておく必要があるうえに、 万が一その値を失った場合は最初からDATを取得しなければならない等 不便が予想されるわけですがみなさんはどうやって対処されていますか?
- 918 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 23:13:59 ]
- 今はgzipなんて推奨してません。
- 919 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 23:16:33 ]
- というのはウソです。
- 920 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 23:23:03 ]
- 関連するAPIをぜんぶ実装して
モジュールとして公開してくれてるひとっていますか?
- 921 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 23:23:58 ]
- >>917
twintailはどうなってるのか読んでみた? C#のソースが公開されてるから読んでみたら? www.geocities.co.jp/SiliconValley/5459/
- 922 名前:899 mailto:sage [2008/10/01(水) 01:15:16 ]
- >>917に自己補足です。
GZip圧縮を有効にしたとき、鯖によってうまくいったりいかなかったりするようです。 実況鯖はGZip圧縮をONにしてもうまく差分取得できました。 一方でN速+といった通常鯖はGZip圧縮をONにすると 416:RequestedRangeNotSatisfiable エラーが返されてしまうようです。 2ちゃんはGZip圧縮は非推奨ってことなんでしょうか(´・ω・`)? >>921 ありがとうございます。 時間ができたときにソースコードを読ませてもらいます。
- 923 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 01:19:03 ]
- 転送量が問題だったのは過去の事
- 924 名前:899 mailto:sage [2008/10/01(水) 01:25:33 ]
- >>923
> 転送量が問題だったのは過去の事 そ、そうなんですか(;´∀`) それでは多くの2ちゃんブラウザではGZip圧縮をかけずに転送してるんでしょうか?
- 925 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 01:39:01 ]
- 今はサーバーリソースの方が問題だからそもそもgzipの圧縮をやらない。
- 926 名前:899 mailto:sage [2008/10/01(水) 02:02:23 ]
- >>921
> www.geocities.co.jp/SiliconValley/5459/ で紹介されたTwinTailブラウザのソースをざっとですが見てみました。 ソースコードの中に 「datファイルがgzip圧縮されていればtrue、そうでなければfalseを指定する」 と記述されたパートがありました。もしかしたら鯖ごとにdatがGZip圧縮されて いたりされていなかったりするということでしょうか? >>922の例で言えば実況鯖はGZip圧縮がONで、それ以外の一般鯖はGZip圧縮 がOFFだったため、違いが生じたのでしょうか? だとしたら何らかの方法で鯖ごとにGZip圧縮されてるかされてないかを識別し、 それに従ってdatをフェチする際にGZip圧縮フラグをONにするかOFFにするか 自動選択させればどの鯖にも対応できるようになるかもしれません。 あるいはGZip圧縮は無視して全鯖非圧縮でdatを取得するようにしてしまっても いいかもしれませんね(´・ω・`)
- 927 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 03:01:08 ]
- GZIP要求を出して圧縮されて返ってくれば解凍、datで返ってくればそのまま
どちらの形式で返ってきたかは応答ヘッダを見ればいい GZIP圧縮すべきかどうかは>>248-249
- 928 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 12:59:26 ]
- HTTPプロトコルを理解するためにRFC2616を読んだり
Wiresharkとかで既存ブラウザがどういう通信しているか見ればいいのに
- 929 名前:899 mailto:sage [2008/10/01(水) 13:00:32 ]
- >>927
もう一度調べてみたんですが、要求ヘッダに req.AutomaticDecompression = DecompressionMethods.GZip; とGZipをリクエストしておけばほとんどの鯖はGZipで圧縮されたデータを 送信してくれるようです。 では問題は何かと言いますと、初回以降の差分要求をするときにヘッダー に付けて送信する If-Range ヘッダーに記述する容量を、圧縮されたとき のものにしておく必要があるようなんです。 たとえば生では10バイトのDATをGZip圧縮して送信してもらったとします。 GZip圧縮をかけた結果5バイトに圧縮されたとします。 すると次回以降差分要求をするときに If-Range ヘッダーには10バイトでは なく5バイトと記述しておかないと正しく差分データが受信できないようなんです。 そうでないと鯖からエラーコード416が返されてしまうようです。 これは結構ゆゆしき問題なんです。 ローカルに保存したDATは当然GZip圧縮を解除した状態なので、GZip圧縮を かけたときのサイズを If-Range ヘッダーに記述するには、圧縮されたときの のデータサイズをDATファイルごとにどこかに記憶しておく必要があるんです。 管理が面倒になるうえにこの圧縮されたときのサイズのデータが吹き飛べば DATは最初から再取得しなければならなくなるんですね。 GZip圧縮は綺麗さっぱり忘れて無圧縮状態でデータを送信するようにした ほうがいいってことなんでしょうか? あるんです。
- 930 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 13:57:09 ]
- >>929
差分取得の時はAcceptEncodingにgzipを付けずに生で受け取る。 初回のレス1から読むときのみAcceptEncodingにgzipを付ける。 でホントにgzipだったら解凍する。生だったらそのまま。 ま、最初はgzip無視で作っちゃってもいいと思う。 君一人が非圧縮で受信したところでたいした負荷でもないし。 余裕出来たら、レス1から読むときはgzipで読むでいいのでは。
|

|