いわゆる専用ブラウザはどのようにして作るのか【ざっくりした概論】

ぶっちゃけお船のゲームの専用ブラウザみたいなものを自作するには何をどうすればいいのだろう?

ということで大雑把に調べたことを書き記しておきます。

(実際の開発は行わないので内容が薄いです)

 

1.自作のウェブブラウザアプリを作る

これは難しくなく、Visual Studio2019でC#(.NET framework)の開発環境を整えると

Windowsフォームアプリの開発テンプレートが使えるので、それを使うと秒で完成します。

docs.microsoft.com

MicroSoft公式が解説しています。アプリケーションって意外と簡単に作れるんですね……(もっとこう、ボタンとかGUIもコードで記述しなきゃだと思っていた)

ボタンやチェックボックスを配置する雰囲気でウェブブラウザが配置できるので、

どうHTMLやCSSを解釈して描画するか問題は考えなくて良いです。

 

2.アプリに通信の中継をさせる(ローカルプロキシサーバーとしての機能をもたせる)&解析

というかローカルプロキシサーバーとして通信を仲介さえさせることができれば別に自作のブラウザアプリを作る必要はないのかもしれない。うん、ない。

例えばFireFoxなら特定のウェブサイトのみ指定したプロキシを経由させる拡張機能があるから、アプリにウェブブラウザ機能はあんまり必要ない。ということになる。

 

では中継するにはどうするか。C#.NETなんちゃらの場合Titanium Web Proxy

github.com

またはFiddler Core

www.telerik.com

Nekoxy

github.com

この3つのうちどれかを組み込むと、うまくできるらしい(試していない)

Fiddler Coreはなんかライセンスが個人利用のみ無料らしく、作ったアプリを配布しようとするとお金がかかるようだ。TitaniumとNekoxyはそうではない。

 

3.完成!

後はC#の基礎的な知識、プロキシ関連の基礎的な知識があれば完成する。

残念ながら私にはそのあたりの知識がないので完成しない。

記事ではさらっと流しているけれど頭の中は(プロキシ???ポート???)となっている。

 

基本情報技術者の試験勉強をするとそのへんの基礎知識が入荷できるかな~

とぼんやり考えている。

まずはC#の構文の勉強かな……