我正在使用 codeigniter 休息服务器 api 库。
当我使用 PUT 方法在 Postman 中输入http://localhost/RESTapi/api/question?X-API-KEY=XXX时,我得到: { "status": false, "error": "Invalid API key" }
它适用于 GET 方法我该如何解决这个问题?
我正在使用 codeigniter 休息服务器 api 库。
当我使用 PUT 方法在 Postman 中输入http://localhost/RESTapi/api/question?X-API-KEY=XXX时,我得到: { "status": false, "error": "Invalid API key" }
它适用于 GET 方法我该如何解决这个问题?
如果您对凭据发出 POST 或 PUT 请求,或者它们的执行方式不一致,我已经看到一些 API 不查看 GET 参数。
确实,凭据应该通过 Authorize 标头或自定义标头进入标头,原因有很多,例如“不记录凭据以访问日志”,但我离题了。
在这种情况下,您可以尝试:
X-API-KEY=XXX
放在 just 的内部PUT
,看看这是否有效特别看一下这个库(https://github.com/chriskacerguis/codeigniter-restserver),他们确实支持 header X-API-KEY
。这应该是您为所有请求放置密钥的地方——最好不要将它们作为 url 参数传递。
这是使用他们 Github 项目中的 curl 的命令行示例。
curl -X POST -H "X-API-KEY: some_key_here" http://example.com/books
在 PHP 中,您可以使用 curl 设置标题,如下所示:
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-API-KEY: XXX'));