FileMaker Data API

概要等

Data API の公式のガイドは以下にあります。


FileMaker Server で Data API を使う準備をする。

FileMaker Admin Console にサインインし、[ コネクタ ] → [ FileMaker Data API ] で FileMaker Data API を有効にする。

スクリーンショット 2019-10-31 20.13.29

アカウントの準備

FileMaker Pro で Server にホストされているファイルを開き、 [ ファイル ] → [ 管理 ] → [ セキュリティ ] で アカウントの設定をする。

今回は、アカウント名が api_user、パスワードが pass というユーザーを作り、アクセス権セット api を割り当てた。( 実際、こんなパスワードでは困るので、セキュリティをよく考えて設定してください。 )

スクリーンショット 2019-10-31 20.23.15

アクセス権セット api は上記画面の [ 詳細設定... ] から設定する。新規作成で、名前を api とし、拡張アクセス権の [ FileMaker Data API でのアクセス ( fmrest ) ] にチェックを入れておく。

今回は、セキュリティ的なことを考えて、表示のみしかできないようにした。

スクリーンショット 2019-10-31 20.23.26

スクリーンショット 2019-10-31 20.23.31

接続確認をしてみる。

まず、接続先 ( FileMaker Server の address ) を確認し、ブラウザ上から接続できるか確認してみます。以下のドキュメントが表示されれば、サーバーの準備は問題ない状態です。

https://[ address ]/fmi/data/apidoc/

スクリーンショット 2019-10-31 20.40.20

以下の画面になった場合は、サーバーの設定を見返してください。

スクリーンショット 2019-10-31 20.40.04


ファイルにログインしてみる。

サーバーの設定が済んだので、Postman というアプリを利用して、実際にログインしてみましょう。

Postman は、RESTサービスを触る際の必須ツールとの事で、以下 URL からダウンロード可能です。

設定する箇所は3箇所です。まず、Authorization タブに移動し、1. POST を選択し、https://[ address ]:443/fmi/data/vLatest/databases/[ ファイル名 ]/sessions と入力します。( ここでは、[ address ] にはServer.local、[ ファイル名 ] には process_management_system と入力してあります。)

続いて、2. Username と password にあらかじめ作っておいたアカウント名と、パスワードを入力します。( ここでは api_user と、pass と入力してあります。 )

名称未設定6.002

そして、headers タブに移動して、3. key には Content-type、value には application/json を入力します。

名称未設定6.001

右上の Send を押すと接続して結果が返ってくるはずです。成功した場合、以下のような結果が返ってきます。

スクリーンショット 2019-10-31 21.23.01

{
   "response": {
       "token": "e9c65794b147a411aba1118a1c34e51312f12680584cd9462842"
   },
   "messages": [
       {
           "code": "0",
           "message": "OK"
       }
   ]
}

アカウント名や、パスワードが違う場合は以下のように返ってきます。

{
   "messages": [
       {
           "code": "212",
           "message": "Invalid user account or password"
       }
   ],
   "response": {}
}

ヘッダーが間違っている場合は以下のように返ってきます。

{
   "messages": [
       {
           "message": "Invalid content type (application/jsonLove).  These are valid: application/json",
           "code": "1708"
       }
   ],
   "response": {}
}

ファイル名が間違っている場合は以下のように返ってきます。

{
   "messages": [
       {
           "code": "802",
           "message": "Unable to open file"
       }
   ],
   "response": {}
}

以上のように、メッセージを見ればおおよその意味がわかると思います。

成功したら、メッセージに OK とでます。FileMaker Server Admin Console で接続状況を見てみましょう。

データベースのタブで、現在接続中のユーザ一覧を確認することができます。

Data API クライアントが 2つあります。これは私が、[ Send ] ボタンを 2 回押したためです。[ Send ] を押すごとにユーザーが増えていきます。

スクリーンショット 2019-10-31 21.04.21

先ほど接続した際に返ってきた、token を利用して、ログアウトしてみましょう。

{
   "response": {
       "token": "e9c65794b147a411aba1118a1c34e51312f12680584cd9462842"
   },
   "messages": [
       {
           "code": "0",
           "message": "OK"
       }
   ]
}

ログアウトしてみる。

Postman で + ボタンを押して、新しい接続条件を作ります。

Delete を選択して、https://[ address ]:443/fmi/data/vLatest/databases/[ ファイル名 ]/sessions/[ token ] と入力します。

( ここでは、[ address ] には Server.local、[ ファイル名 ] には process_management_system、[ token ] には、e9c65794b147a411aba1118a1c34e51312f12680584cd9462842 と入力してあります。)

右上の Send を押してみましょう。結果が返ってくるはずです。

スクリーンショット 2019-10-31 21.23.06

{
   "response": {},
   "messages": [
       {
           "code": "0",
           "message": "OK"
       }
   ]
}

Token が間違っている場合は、以下のように返ってきます。既に15分以上たって、自動ログアウトされているか、token が間違っていないか、確認してみましょう。

{
   "messages": [
       {
           "code": "952",
           "message": "Invalid FileMaker Data API token (*)"
       }
   ],
   "response": {}
}


FileMaker Admin Console で、Data API の接続が解除されていることを確認します。

スクリーンショット 2019-10-31 21.24.56

さて、Postman 上ではログインして、ログアウトすることが確認できました。

( 何もしないと 15 分後に自動的にログアウトされます。 )

続く( 次回は、FileMaker でログイン、ログアウトする場合。 )



リンク

以下が一番わかりやすい




この記事が気に入ったらサポートをしてみませんか?