因此,我的客户需要使用PHP的REST API,该API根据URL参数的条件提供输出
因此,现在基本上需要三个URL,并且已经完成了。
所以他们是
localhost/newapi/client/<AuthKey> - for authorizing
localhost/newapi/client/<clientid>/categories/ - to get all the categories
localhost/newapi/client/<clientid>/categories/<categoryid> - to get all items in a category
使用.htaccess作为精美的网址
因此,现在他要求将AuthKey需要添加到HTTP header 而不是URL。因此,AuthKey必须作为 header 传递,其余作为URL参数传递
所以我的问题是如何做到这一点。以及如何从请求中检索AuthKey?
欢迎任何有关此问题的教程或评论
最佳答案
您可以告诉客户端,当他请求您的api时,他会添加 header ,如下所示:
AuthKey:您的API身份验证 key
或者
token :您的API token
然后在你的PHP代码
$headers = getallheaders();
$token = $headers['Token'] or ['AuthKey'];
然后检查是否在数据库中的 key ,然后处理您的代码
笔记:
您的客户可以使用PHP cURL添加 header
curl_setopt($curl-handle, CURLOPT_HEADER, array(
'Token' => 'client-auth-token', //or
'AuthKey' => 'client-auth-token'
));
关于php - 头中的AuthKey,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30432132/