Skip to content

Instantly share code, notes, and snippets.

@tsupo
Created April 10, 2012 10:21
Show Gist options
  • Save tsupo/2350156 to your computer and use it in GitHub Desktop.
Save tsupo/2350156 to your computer and use it in GitHub Desktop.
WebKit.NET 課題
(1) proxyサーバー経由だと https アクセスがうまくいかない問題
- 環境変数 WEBKIT_IGNORE_SSL_ERRORS=1 をセットすれば解決するのでは? という提案があったが、解決しなかった
-- http://stackoverflow.com/questions/5579631/webkitdotnet-unable-to-load-https-site
- そういえば、Windows版 OpenSSL を WinSock2 との組み合わせで使うと、一部の https なサーバーとうまく接続できないというバグ(いまだに直っていない)があるけど、本件と関係ある?
-- このバグは、SSL_connect() が異常終了したときに、OpenSSL のエラーコードを取得してみると SSL_ERROR_SYSCALL になっているケース。
WinSock2 のエラーコードが WSAECONNRESET のときはリカバリー可能だ(というところまでは自力で調べた)が、そうではないときはリカバリー不可能、という問題。
- Windows版Safari、Google Chrome の真似っこすれば、うまくいくはず?
- そもそも WebKit.NET が参照している WebKit のバージョンが古いので、これをアップデートすれば解決するかも?
- WebKit.NET の develop ブランチの方で、何か進展がないか、チェックする
-- develop ブランチも fork 先に取り込みたいけど、方法が不明。master ブランチしか取り込めない?
(2) EUC-JP な Web ページを一度でも参照してしまうと、その後、謎のエラーが発生する
(3) 複数のスレッドから同時に WebKit.WebBrowser.Document にさわれてしまうが、これはいいのか?
(排他制御しなくていいのか?)
- いちいち、Invoke せずにアクセスできるのは(ブラウザのコードを書く立場からは)楽でいいが、セキュリティ面等、罠がありそう
- スレッドの予期しない競合状態による再現性の低いバグが大量に発生しそう
(4) System.Windows.Forms.WebBrowser にあって、WebKit.WebBrowser にない機能が多い(多すぎる)
- WebKit.NET の develop ブランチの進展に期待
-- BASIC認証はようやく対応されたが、ダイジェスト認証は未対応のまま?
- コンテキストメニュー(右クリックでほげほげ)は、とりあえず、自分で実装してみた
- おそらく、WebKit 本体に手を入れないと、実現不可能なものがある(と予想している)
- System.Windows.Forms.WebBrowser と同じ名前のメソッド、プロパティは同じ意味、効用になってると思いきや、結構、独自の意味、使い方、機能に変わっているものがあって混乱する
(System.Windows.Forms.WebBrowser の実際の挙動を知らずに、単に名前だけ見て挙動を推測して実装しているのではないか(そして、その推測が間違っていたり、誤解だったりするのではないか)という気がしてならない)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment