大家好,我是我们 Discourse 实例的管理员用户,但无法查询某些端点。
有时我会看到这样的提示:
其他时候则会收到“您需要登录才能执行此操作”的提示。
我已确认所使用的 API 密钥已关联到我的管理员账户,且 API_Username 也是我的用户名。对此,您有什么建议吗?
我猜测是调用时没有正确发送凭据?
您可以尝试将 API 凭据放在请求头中,而不是查询参数中。API 文档主题中应该有一个示例。
有可能——我不确定——我目前的设置只是从以下地址下载了 Postman 集合:
我只替换了 API 密钥、用户名和基础 URL。
这个集合是否已经不再有效?
谢谢 @blake,我会试试看。
是的,其中一些可能已经过时了。
@blake - 通过请求头传递凭据返回的结果相同:
{
"errors": [
"您无权查看请求的资源。"
],
"error_type": "invalid_access"
}
我使用以下 curl 命令成功让 Meta 上的群组成员 API 请求生效:
curl -i -sS -X GET "https://meta.discourse.org/groups/my-private-group/members.json" \
-H "Content-Type: multipart/form-data;" \
-H "Api-Key: key" \
-H "Api-Username: username"
或许你可以尝试在 Postman 中使用“复制为 curl 命令”功能,然后进行对比。