FileMakerから頑張ってWebサイトへのログインを自動化する
webビューアでサイトログイン
動機
業務上つかうサイトをFilemakerに組み込みたいというニーズがあった。 ただ、そのサイトの完成度がかなり高いため、変にAPIを使ってFMのシステムにするより、そのサイトを使ってもらった方がいい(開発工数的にも)と思った。
[Webを開く], [Webから挿入]スクリプト
最初はPOST投げてそれをうまいことできんかと思った。が、うまく行かない。 ここで質問した。 [解決] FileMakerを使って特定のWebサイトにログインしたい - FMQ&A
Webビューアで行けるよ、ブラウザがいいよという話があった。
Webビューアで試す
まずWebビューア。
FileMaker 19の新機能「Web ビューアで JavaScript を実行」の使い方とインスペクタの活用方法 - frudens レイアウト上での Web ビューアの使用
これらを参考に実装。 ただ、Webビューアって微妙にブラウジング向けではない。色々探していたら下記のようなページがあった。
FileMaker Pro で Web ビューアを創造的に使用するための Tips
ブラウザ立ち上げ - AppleScriptからsafariとJavaScriptを動かして操作する
このページが参考になる。AppleScriptって勉強しにくすぎて今まで手を出してこなかったんだけど、JavaScriptがいじれるとなると便利そう。これで多分ログインはできる。問題はサーバに置いた時にどう動くかという話。
あと、実装してみたけど、AppleScript経由でやると処理がモサモサしてる。それにやっぱパスワードとかを生でFileMaker上で管理するってのがよろしくない。
結論 - URLでログイン画面を開いてあげる、でおしまい
URLから開くを使ってログインページを開き、あとはSafariのキーチェーンでログインさせる、で良さそうです。
参考
FileMaker 19の新機能「Web ビューアで JavaScript を実行」の使い方とインスペクタの活用方法 - frudens