Php API数据读取
我对API是相当陌生的,它正在工作。目前,我们正在为患者开发一个web应用程序来监测血压(BP),报告将自动在我们的web应用程序中提供 我们与一家为我们提供BP设备的公司达成了协议。一旦患者接受测试,设备将向我们的回调URL发送响应。 他们提供的文档让我有点困惑,因为我对API非常陌生 我能够使用API密钥和密码短语生成令牌Php API数据读取,php,json,api,curl,Php,Json,Api,Curl,我对API是相当陌生的,它正在工作。目前,我们正在为患者开发一个web应用程序来监测血压(BP),报告将自动在我们的web应用程序中提供 我们与一家为我们提供BP设备的公司达成了协议。一旦患者接受测试,设备将向我们的回调URL发送响应。 他们提供的文档让我有点困惑,因为我对API非常陌生 我能够使用API密钥和密码短语生成令牌 $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://xx
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://xxx/auth/generateToken',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"api-key" : "myapikey",
"pass-phrase" : "passphrase"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
但是现在生成令牌之后,我需要做什么?他们会在生成令牌后立即发送json格式的报告响应吗。或者我需要发送任何Get响应来获取响应吗?
我真的很困惑
文件
可以通过以下api调用生成/刷新api令牌:
http url--https://xxx/auth/generateToken
http方法——POST
http头——内容类型:application/json
正文:
此API调用生成的令牌将随读取一起发送
http头参数名称(X-CARE-API-TOKEN)中的有效负载。
您可以使用此令牌验证源真实性
下面是每次读取时将推送的json有效负载
由设备获取到您的api url。
方法:邮寄
HTTP标头将是:
血压监护仪的设计
生成令牌后,通常会有另一个API调用来实际获取生成令牌的数据 它应该是另一个URL,末尾带有方法。 因此将有另一个CURL调用 您的API开发人员可能会为此提供一些文档。
或者你可能需要得到他们的支持。谢谢你为我澄清这一点。他们没有提供任何其他URL调用来获取响应。我可能需要询问那里的支持团队。每次患者进行测试时,支持人员都会将响应发送到我们的回调URL。现在,如果他们自己发送响应,我就可以使用json_解码响应并将其保存在数据库中。我说得对吗?但是,在我们的回调URL中生成令牌有什么用呢?是的,您是对的,响应需要进入数据库。回拨URL将来自您的服务器,您将在那里处理患者接受测试时他们发送的数据。然而,令牌可以一天生成一次,或者一周、一个月甚至更多。此令牌将仅为您的服务器提供真实性。我认为他们可能需要在标题或URL中使用令牌作为pram
{
"api-key" : "your api key sent to you",
"pass-phrase" : "passphrase sent to you"
}
response :
{
"token" : "your api token"
}
{
"readingData": {
"id": 572043,
"device": {
"name": "Blood Pressure Monitor",
"serialNumber": "BP800TEST04",
"manufacturerNumber": "301",
"model": "800"
},
"transmissionTime": 1612940047,
"readingTime": 1612940041,
"source": "Device",
"userNumber": 1,
"readings": [
{
"id": 1,
"type": "BP Systolic",
"value": "109",
"unit": "mm/hg"
},
{
"id": 2,
"type": "BP Diastolic",
"value": "145",
"unit": "mm/hg"
},
{
"id": 3,
"type": "BP Heartrate",
"value": "157",
"unit": "Beats Per Minute"
},
{
"id": 4,
"type": "Irregular Heartbeat",
"value": "1"
},
{
"id": 5,
"type": "Battery Level",
"value": "98",
"unit": "Percent"
},
{
"id": 6,
"type": "Signal Strength",
"value": "10",
"unit": "db"
}
]
}
}