キオスクモードでchromiumまたはfirefox Webブラウザを使用して起動時にWebサイトにログインしていますが、javascriptを使用してWebサイトに自動的にログインするコマンドを送信したいと思います。私はjavascriptを書く方法を知っていますが、ターミナルbashファイルからWebブラウザにjavascriptを「パイプ」する方法がわかりません。また、私はLinuxで働いています。
答え1
OS Xでは、AppleScriptを使用してChromeでJavaScriptを実行できます。
xj(){ osascript -e'on run{a}' -e'tell app"google chrome"to tell active tab of window 1 to execute javascript a' -eend "$1"; }
FirefoxはAppleScriptをサポートしていません。
答え2
Firefoxがあなたが望むことをできるかどうかはわかりません。多くのコマンドラインオプションスクリプトから Firefox を起動するために使用されます。
クロムにもっと選択たぶん、ローカルソースからJavaScriptを実行できるかもしれませんが、それは疑問です。
開発者コンソールを介してJavaScriptを渡すことができる場合は、Webブラウザセッション内で任意のコード(自動ログインなど)を確実に実行できます。
ハッカー攻撃
両方のブラウザでスクリプトで開始URLを確実に指定できるので、おそらく次のように動作します1:
ログインしたいWebページに自動的に移動し、ログインプロセス(
POST
ログインフォームなど)を完了するスクリプトを作成します。このファイルをディスクに保存し、ユーザーが読むことができることを確認してください。
Firefoxを起動し、次のファイルをポイントします。
./firefox -url "file:///home/thisUser/desktop/foo.html"
URLスキームがfile:///
すべての場合に機能するかどうかはわかりませんが、OSXでテストしました。
これによりファイルがロードされ、コンテンツのレンダリングが試行されます。これはfile:///
localhostでWebサーバーを実行する必要がない方法ですが、これも機能します。
XSSの問題やその他のリモートログイン障害が発生する可能性があるため、サーバー側のスクリプトに戻ってブラウザをlocalhost
Webサーバーとして指定する必要があります。
頑張ってください!
1まだ完全にテストしておらず、アイデアだけを投げるだけです。