我开发了一个小型网络服务,它将接受用户查询并将数据作为 json 响应返回。一切正常。但我想知道如何从客户端设置和比较授权令牌作为 curl 标头的一部分。这是我发送请求的代码。我仍然没有在 FetchData.php 上设置任何验证。我想在 FetchData.php 上实现它。如何实施?
$query = "select * from product_details where id = 2";
$query_params = array("query" => $query);
$url = "http://localhost/api/fetchData.php?" . http_build_query($query_params, '', "&");
$curl = curl_init();
$token = 'ABCD123456';
$header[] = 'Authorization: Token '.$token;
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $url,
CURLOPT_HTTPGET=>1,
CURLOPT_FAILONERROR=> 1,
CURLOPT_RETURNTRANSFER=> true,
CURLOPT_HTTPHEADER=>$header
));
$resp = curl_exec($curl);
if($resp === false)
{
$responseJson = new stdClass();
$responseJson->status = "FAILED";
$responseJson->message = 'Send error: ' . curl_error($curl);
throw new Exception(curl_error($curl));
}
else{
$resp = curl_exec($curl);
}
在上面的代码中,我添加了这个授权令牌。但实际上这不是在服务器端设置的,我的意思是在fetchData.php
.
$token = 'ABCD123456';
$header[] = 'Authorization: Token '.$token;
所以我的问题是如何设置这个授权令牌fetchData.php
并验证来自客户端的令牌?任何帮助将不胜感激。