【问题标题】:FileMaker cURL ProblemsFileMaker cURL 问题
【发布时间】:2017-08-16 17:25:47
【问题描述】:

所以我到处寻找,试图找出问题所在,但我还没有真正能够将它拼凑起来。随着最近 FM 16 的到来,我们获得了 cURL 功能,在此之前我只是使用一个简单的 PHP 脚本来完成所有处理并使用 API 导入到 FileMaker。

我正在尝试转换:

$url = 'https://' . $organization . '.qualtrics.com/API/v3/responseexports';
$header = array(
    'X-API-TOKEN: ' . $apiToken,
    'Content-Type: application/json'
);
$postData = array(
    'surveyId' => $surveyId,
    'format' => 'csv',
    'useLabels' => true
);

$d = curl_init();

curl_setopt_array($d, array(
    CURLOPT_URL => $url,
    CURLOPT_HTTPHEADER => $header,
    CURLOPT_RETURNTRANSFER => TRUE,
    CURLOPT_POSTFIELDS => json_encode($postData)
));

$response = curl_exec($d);

我在 FileMaker 中的 cURL 选项如下所示:

"--请求 POST" & "--datasurveyId=$surveyID & 格式=csv & useLabels=true" & "--header \"X-API-TOKEN: $apiKey\"" & "--header \"Content-Type: application/json\""

但我得到的只是该服务器的响应,说它不理解我的呼叫。

【问题讨论】:

  • 您不需要包含“--request POST”,因为指定--data 无论如何都会作为 POST 发送。

标签: php curl post filemaker


【解决方案1】:

从我的机器上发布一个快速回复,但您需要拆分字符串和变量。像这样: ...surveyId=" & $surveyID & "format=...

我还没有看过其余的语法。

编辑:

要查看传递的最终调用是什么,您应该准备好所有内容并将其存储在一个变量中,然后将其作为 cURL 选项传递。如果您有 FileMaker Pro Advanced,则可以使用数据查看器检查变量是否有错误。如果没有,您可以在布局上放置一个全局变量作为合并变量,以便在运行脚本后查看其内容。

设置变量的脚本步骤应该是这样的:

设置变量 $myHeader(或 $$myHeader,如果你想在脚本之外检查它)

Let ([
$surveyID = "MySurveyID";
$apiKey = "MyApiKey"];
  "--request POST --data surveyId=" & $surveyID & "&format=csv&useLabels=true --header \"X-API-TOKEN: " & $apiKey & "\" --header \"Content-Type: application/json\""
)

(您可能已经在别处定义了 $surveyID 和 $apiKey 变量。)

在解决你的电话后,我从上面的计算中得到了这个:

--request POST --data surveyId=MySurveyID&format=csv&useLabels=true --header "X-API-TOKEN: MyApiKey" --header "Content-Type: application/json"

【讨论】:

  • 感谢您的收获!服务器仍然响应说它不明白我想要做什么,但遗憾的是。这是消息:<HTML><HEAD> <TITLE>Bad Request</TITLE> </HEAD><BODY> <H1>Bad Request</H1> Your browser sent a request that this server could not understand.<P> Reference #7.44d3d93f.1502907772.0 </BODY> </HTML>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多