うならぼスマートフォン用の表示で見るうならぼどうも。アフィリエイトとか広告とか解析とかは/about見てね。この広告は、90日以上更新していないブログに表示しています。2016-09-01F#からFiddlerCoreを触るF#リセマラ用にキャッシュプロキシでも作ってみようかと思ったんだ。結局そこまで高速化はできなくて、そもそもリセマラ面倒になったよね。SAZの読み書きを実装してみるFiddlerではセッションをSAZという形式で保存することができます。FiddlerCoreでもこれを読み書きすることはできるのですが、Zipアーカイブの処理は自分で実装する必要があります。例によってろくなドキュメントがないので、SampleAppのSAZ-DotNetZip.csを参考に実装していきます。その名の通りサンプルはDotNetZipを使っていますが、今回はSystem.IO.Compression.ZipFileを使います。0内包表記とパイプライン演算子GetRequestFileListで内包表記やパイプライン演算子を使っていますが、内包表記ひとつで済ますこともできます。|]内包表記なしでも。Seq.toArrayパイプライン使うのはLINQで見慣れてるし、内包表記もラムダの嵐を避けられて悪くないし・・・と思った結果がさっきのコードです。中途半端かもしれない。ひとつF#らしいところというと、GetFileBytesで使っているuse演算子でしょうか。C#でいうusingですが、インデントが深くならなくて素敵。プロキシを立てるSAZを読み込んでURLが一致するものにキャッシュから返そうかと思ったんですが、数が多いとSAZの読み書きが遅いとか、Fiddler使うの面倒とか・・・そんなわけでhttpで取得されるあらゆるファイルをURLに対応したパスにキャッシュするという雑な実装に。こんなエラーが出ます。メソッドを使用する必要があります。インスタンス化にします。でないことが問題のようです。渡さないといけません。あとはoption使ってる以外はF#らしくないというか、すごく手続き型っぽいコードですねえ。(1)はてなブログをはじめよう!unaristさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。