Filemaker API returns 尝试通过电子邮件查找记录时出错

Filemaker API returns error when trying to find records by email

我正在使用 Filemaker API 和 PHP 以及 Postman 对其进行测试。在 Postman(和我的 PHP 项目)中,每当我尝试通过电子邮件字段查找记录时,它 return 是一个错误,如果其中有 @ 符号,则找不到记录查询。例如:

{
  "query":[
    {"Contact_Email": "john.smith@gmail.com"}]
}

这将 return:

{
    "errorMessage": "No records match the request",
    "errorCode": "401"
}

但是这个请求:

{
  "query":[
    {"Contact_Email": "john.smith"}]
}

请问return我要找的记录。

这里有什么问题?我需要转义 @ 符号吗?这是 FileMaker API 问题还是其他问题?

@ 符号在 FM DB 引擎中保留为运算符,因此很可能会与它发生冲突。我不确定如何通过 API 对其进行转义,但是实际将引号作为搜索字符串的一部分进行测试应该会让您走上正轨...

{
  "query":[
    {"Contact_Email": "\"john.smith@gmail.com\""}]
}

或者可能包括等号作为查询的一部分:

{
  "query":[
    {"Contact_Email": "=john.smith@gmail.com"}]
}

或者尝试\转义@:

{
  "query":[
    {"Contact_Email": "john.smith\@gmail.com"}]
}

我刚刚使用了双等号 ==john@email.com 这在 Postman 中有效