介绍:filemaker-rest-connector 是一个使用 Node.js 编写的包,用于连接 FileMaker 服务器和 REST api,让开发者可以通过 REST api 访问和管理 FileMaker 中的数据。这个包非常适合需要使用 FileMaker 作为后端数据库的前端开发者使用。在本篇文章中,我们将详细介绍如何使用 filemaker-rest-connector 包,让你能够轻松地连接 FileMaker 服务器和 REST api,实现数据的访问和管理。
安装 filemaker-rest-connector
在开始使用 filemaker-rest-connector 前,需要先安装它。在安装过程中,需要确保你已经安装了 Node.js 环境,否则你需要先安装 Node.js。接着,在终端中使用 npm 安装 filemaker-rest-connector:
npm install --save filemaker-rest-connector
连接 FileMaker 服务器
使用 filemaker-rest-connector 连接 FileMaker 服务器是非常简单的。首先,需要在代码中引入 filemaker-rest-connector 包:
const FMREST = require('filemaker-rest-connector');
接着,可以创建一个新的 FMREST 对象,并指定 FileMaker 服务器的主机和端口:
const fms = new FMREST({ host: 'localhost', port: '80' });
如果你需要使用 HTTPS 来连接到 FileMaker 服务器,那么你可以指定 https
选项:
const fms = new FMREST({ host: 'localhost', port: '443', https: true });
此时,已经成功连接到了指定的 FileMaker 服务器。
认证
连接到 FileMaker 服务器后,需要进行认证才能访问和操作数据。FileMaker 服务器支持多种认证方式,包括用户名和密码、OAuth 和 Windows 身份验证。
用户名和密码认证
如果你在 FileMaker 服务器中设置了用户账号和密码,那么你可以使用用户名和密码认证方式。这里,我们将用户名和密码作为对象传递给 FMREST:
const fms = new FMREST({ host: 'localhost', port: '80', username: 'admin', password: 'password' });
OAuth 认证
如果你的 FileMaker 服务器支持 OAuth 认证,并且你已经设置了 OAuth 客户端 ID 和密钥,那么你可以使用 OAuth 认证方式。这里,我们将客户端 ID 和密钥作为对象传递给 FMREST:
const fms = new FMREST({ host: 'localhost', port: '80', oauth: { clientID: 'YOUR_CLIENT_ID', clientSecret: 'YOUR_CLIENT_SECRET' } });
Windows 身份验证
如果你的 FileMaker 服务器使用 Windows 身份验证,那么你需要在系统中设置好 Windows 身份验证,然后直接连接即可:
const fms = new FMREST({ host: 'localhost', port: '80', windows: true });
查询数据
成功连接到 FileMaker 服务器,并进行了认证后,就可以开始查询数据了。可以使用以下两个函数来查询数据:
fms.getRecords()
:获取多条记录。fms.getRecord()
:获取一条记录。
下面将对这两个函数进行详细说明。
获取多条记录
使用 fms.getRecords()
函数可以获取多条记录。以下是一个简单的例子,获取所有记录:
fms.getRecords('YOUR_LAYOUT_NAME').then(function(data) { console.log(data); });
其中,'YOUR_LAYOUT_NAME' 是 FileMaker 布局的名称。
如果你只想获取部分记录,可以使用 options
对象来筛选数据:
const options = { limit: 10, offset: 20, sort: [{ fieldName: 'field1', sortOrder: 'descend' }] }; fms.getRecords('YOUR_LAYOUT_NAME', options).then(function(data) { console.log(data); });
其中,limit
是指定返回记录的数量,offset
指定返回记录的偏移量,sort
指定对记录的排序方式。
获取一条记录
使用 fms.getRecord()
函数可以获取一条记录。以下是一个简单的例子,获取 ID 为 1 的记录:
fms.getRecord('YOUR_LAYOUT_NAME', 1).then(function(data) { console.log(data); });
其中,'YOUR_LAYOUT_NAME' 是 FileMaker 布局的名称,1 是记录的 ID。
修改数据
除了查询数据外,filemaker-rest-connector 还支持添加、修改和删除数据。
添加数据
使用 fms.createRecord()
函数可以添加一条新的记录。以下是一个简单的例子,添加一条名为 "John Doe" 的记录:
const newRecord = { field1: 'John Doe' }; fms.createRecord('YOUR_LAYOUT_NAME', newRecord).then(function(data) { console.log(data); });
其中,'YOUR_LAYOUT_NAME' 是 FileMaker 布局的名称,newRecord
是一个对象,包含添加的数据。
修改数据
使用 fms.updateRecord()
函数可以修改一条记录。以下是一个简单的例子,将 ID 为 1 的记录中的字段 field1 修改为 "Jane Doe":
const record = { ID: 1, field1: 'Jane Doe' }; fms.updateRecord('YOUR_LAYOUT_NAME', record).then(function(data) { console.log(data); });
其中,'YOUR_LAYOUT_NAME' 是 FileMaker 布局的名称,record
是一个对象,指定要修改的数据。
删除数据
使用 fms.deleteRecord()
函数可以删除一条记录。以下是一个简单的例子,删除 ID 为 1 的记录:
fms.deleteRecord('YOUR_LAYOUT_NAME', 1).then(function(data) { console.log(data); });
其中,'YOUR_LAYOUT_NAME' 是 FileMaker 布局的名称,1 是要删除记录的 ID。
结束语
本篇文章详细介绍了如何使用 filemaker-rest-connector 包来连接 FileMaker 服务器和 REST api,实现数据的访问和管理,并提供了多个示例代码进行参考。希望本文对你有所帮助,让你能够更轻松地使用 FileMaker 作为后端数据库,进行前端开发。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005597b81e8991b448d7065