« 前のひとこと | トップページ | 次のひとこと »

cocolog:88646381

Mozilla Firefox と Google Chrome のブラウザ拡張(アドオン)である PP Interrupter Lite を作って公開した。前から作っている PP Interrupter (Original) ([cocolog:88550595])の機能制限版。 (JRF 1317)

JRF 2017年12月27日 (水)

Firefox 用のアドオンのページ:

《PP Interrupter Lite – Firefox 向けアドオン》
https://addons.mozilla.org/firefox/addon/pp-interrupter-lite/

Chrome 用のアドオンのページ:

《PP Interrupter Lite - Chrome ウェブストア》
https://chrome.google.com/webstore/detail/pp-interrupter-lite/denkjiefdjoneofcnkebcjcobpedbncj

JRF2017/12/273143

説明用ホームページ(Original と同じ):

《PP Interrupter》
http://jrf.cocolog-nifty.com/archive/pp-interrupter/README_ja.html

サポート用のブログ内ページ:

《PP Interrupter Lite: GET をブロック》
http://jrf.cocolog-nifty.com/software/2017/12/post-1.html

JRF2017/12/271081

「詐欺的な自動ダイレクトを識別するために、逆に普段から健全な自動リダイレクトをブロックする習慣をつけるという逆転の発想のアドオン」であることは PP Interrupter (OOriginal) と変わらない。ただし、Original が Web リクエストのすべてのメソッドをブロックできるのに対し、Lite は GET メソッドしかブロックできない。しかし、この機能制限によって Chrome や Firefox for Android に対応できた。

JRF2017/12/275400

コード内の話をすると、chrome.webRequest.onBeforeRequest が Firefox では Promise を返せるのに対し、Chrome では返せない。また、ブロックしたとき、メソッドが POST の場合は、requestBody というパラメータでその内容が分かるのだが、その形式が multipart/form-data なのか application/x-www-form-urlencoded なのかは知りようがないようで、後で替わりに実行するということができない。

JRF2017/12/273242

それで GET のみに対応して Promise せずに警告ページに遷移して待ち、ボタンがクリックされたら GET の URL に飛び直すという形式で実装したのが PP Interrupter Lite ということになる。

JRF2017/12/279183

また、Firefox for Android は Promise を返すのに対応しているのだが、pageAction のボタンの表示が Firefox for PC と違うらしく、Promise で待っている間にボタンが表示されない。それで仕方なく、警告ページに一度遷移することにした。すると、GET しかとれないのはさっきと同じ。

JRF2017/12/279762

……。

で、この pageAction のボタンの動作が環境によっていろいろ違うというのがはまりどころだった。

JRF2017/12/270995

Google Chrome が pageAction をアドレスバーに表示してくれないのにはまいった。PP Authorizer と並用すれば似たボタンが二つ並ぶことになる。うーん、PP Autorizer と PP Interrupter Lite、まとめたほうがいいんだろうか?

JRF2017/12/270175

そして Firefox for Android。Nightly ではうまくいってたのが、ノーマルではうまくいかないとかあった。アイコンを隠す動作も Chrome や Firefox for PC と違い過ぎる。試さないとわからないことが多過ぎ!

JRF2017/12/271673

……。

Google と Mozilla にはじめて提出するとき含めるのを忘れたファイルがあったのに、公開できてしまった。やっぱり細かいチェックはしてないみたい。特に Google は Mozilla のようなソースのチェックがいっさいないように思えるのだが…。

多言語対応とか、Google は金取るんだね。Mozilla も manifest.json で i18n 対応してないと description が書き換えられないとかあるみたいだし。まぁ、その辺は今後、考えればいいか…。

JRF2017/12/270555

ドキュメントは Original を少し書き換えることで対応。しかし、サポートページとかは作っから、いろいろ作業はして、やっといま、ひとこと書きで作業終りに近付いている。

年末なのにいろいろなところに作業を押しつけている感じもして申し訳ない。

もちろん、多くの人に使ってもらいたくていろいろ対応しているのだけど、やはりニッチであることには変わらないから、それは難しいのだろうな…。orz

JRF2017/12/270647

« 前のひとこと | トップページ | 次のひとこと »

トラックバック


トラックバックのポリシー

他サイトなどからこの記事に自薦された関連記事(トラックバック)の一覧です。

» cocolog:88550595 from JRF のひとこと

Firefox のブラウザ拡張(アドオン)である PP Interrupter を作って公開した。詐欺的な自動ダイレクトを識別するために、逆に普段から健全な自動リダイレクトをブロックする習慣をつけるという逆転の発想のアドオン。... 続きを読む

受信: 2017-12-29 18:13:08 (JST)

» cocolog:88703123 from JRF のひとこと

ブラウザ拡張(アドオン)として Tweet Sig を作って公開した。三文判程度の認証に使うことを想定している。 続きを読む

受信: 2018-03-30 21:39:41 (JST)