-----
動作検証
Windows 10
FileMaker 16,17,18
Mac OS 10.13.3
FileMaker Pro 18
iOS 13.3
FileMaker Go 18
ダウンロード:
GmailFM_Lib_v*_trial.zip(試用版)
GmailFM_Lib_v*.zip(有償)
https://fm-aid.booth.pm/items/3815294
【Q&A】不明な点や、動作しない等、以下よりお問い合わせ下さい。
https://fm-aid.com/community/viewforum.php?id=7
準備
Google API プロジェクトの作成(2020.01.25現在)
Google Developer Console にアクセス。
https://console.developers.google.com/
■プロジェクトの作成
(1)の部分をクリック。
※プロジェクトがない場合、[プロジェクトの選択]と表示されています。
(2)「新しいプロジェクト」をクリック
任意のプロジェクト名を設定し、[作成]をクリック
作成した「プロジェクト」を選択
■ライブラリ
「ライブラリ」をクリック
「gmail」で検索
「Gmail API」を選択
[有効にする]をクリック
■認証情報
[認証情報]をクリック
[同意画面を構成]をクリック
[外部]を選択
[作成]をクリック
「アプリケーション名」を設定し、
[保存]をクリック
[認証情報]をクリック
[認証情報を作成]をクリック
[OAuth クライアント ID]をクリック
[その他]を選択
[作成]をクリック
「クライアント ID」
「クライアント シークレット」をコピーし、控えておく
(2022/11/16 追記)
OAuth 同意画面
公開ステータス:本番環境 に設定
※v1.2は、以下修正済(2024/01/15 追記)
■FileMaker(2022/11/16 追記)ファイル:GoogleApiFM_Lib.fmp12 を修正してください。
スクリプト:Get_AuthorizationCode
redirect_uri=urn:ietf:wg:oauth:2.0:oob を変更
↓
redirect_uri=http://localhost
URL を開く [ Let([ ¢URi="https://accounts.google.com/o/oauth2/auth?scope={scope}&redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=code&client_id={ClientId}" ]; Substitute ( ¢URi ; ["{scope}" ; AppPermission::Scope] ; ["{ClientId}" ; GoogleApiProject::ClientId] ) ) ] [ ダイアログなし ]
↓
URL を開く [ Let([ ¢URi="https://accounts.google.com/o/oauth2/auth?scope={scope}&redirect_uri=http://localhost&response_type=code&client_id={ClientId}" ]; Substitute ( ¢URi ; ["{scope}" ; AppPermission::Scope] ; ["{ClientId}" ; GoogleApiProject::ClientId] ) ) ] [ ダイアログなし ]
スクリプト:Get_Token
--data redirect_uri=urn:ietf:wg:oauth:2.0:oob を変更
↓
--data redirect_uri=http://localhost
変数を設定 [ $Option; 値:Let( ¢option=" --request POST --data code={Authorization_Code} --data client_id={client_id} --data client_secret={client_secret} --data redirect_uri=urn:ietf:wg:oauth:2.0:oob --data grant_type=authorization_code " ; Substitute ( ¢option ; ["{Authorization_Code}" ; GLOBAL::gAuthorization_Code] ; ["{client_id}" ; GoogleApiProject::ClientId ] ; ["{client_secret}" ; GoogleApiProject::ClientSecret ] ) ) ]
↓
変数を設定 [ $Option; 値:Let( ¢option=" --request POST --data code={Authorization_Code} --data client_id={client_id} --data client_secret={client_secret} --data redirect_uri=http://localhost --data grant_type=authorization_code " ; Substitute ( ¢option ; ["{Authorization_Code}" ; GLOBAL::gAuthorization_Code] ; ["{client_id}" ; GoogleApiProject::ClientId ] ; ["{client_secret}" ; GoogleApiProject::ClientSecret ] ) ) ]
変数を設定 [ $URi; 値:"https://accounts.google.com/o/oauth2/token" ]
■FileMaker
サンプルファイル「GoogleApiFM_Lib.fmp12」
レイアウト:GoogleApiProject を開く
「クライアント ID」
「クライアント シークレット」をそれぞれ設定
レイアウト:Application Permission を開く
Title:
(任意) calendar/Googleアカウント の様な入力がおすすめ
例:Gmail/xxxxx@gmail.com
GoogleAccount:
Googleアカウント(Gmail)を設定
例:xxxxx@gmail.com
FMid_GoogleApiProject:
レイアウト:GoogleApiProject で作成した APIプロジェクトを選択
Scope:
https://mail.google.com/
[Get_AuthorizationCode]ボタンをクリック
ブラウザが開きます
操作するGmailのGoogleアカウントでログインor選択
[詳細]をクリック
[アプリ名(安全ではないページ)に移動]をクリック
[許可]をクリック
[許可]をクリック
コードをコピー
サンプルファイル「GoogleApiFM_Lib.fmp12」
レイアウト:GoogleApiProject を開く
「クライアント ID」
「クライアント シークレット」をそれぞれ設定
レイアウト:Application Permission を開く
Title:
(任意) calendar/Googleアカウント の様な入力がおすすめ
例:Gmail/xxxxx@gmail.com
GoogleAccount:
Googleアカウント(Gmail)を設定
例:xxxxx@gmail.com
FMid_GoogleApiProject:
レイアウト:GoogleApiProject で作成した APIプロジェクトを選択
Scope:
https://mail.google.com/
[Get_AuthorizationCode]ボタンをクリック
ブラウザが開きます
操作するGmailのGoogleアカウントでログインor選択
[詳細]をクリック
[アプリ名(安全ではないページ)に移動]をクリック
[許可]をクリック
[許可]をクリック
コードをコピー
(2022/11/16 追記)
クエリパラメータ code= をコピー
0 件のコメント:
コメントを投稿