在 Drupal 服务模块中使用密钥
我正在测试 Drupal 服务模块,它工作正常。我现在从无密钥身份验证切换到密钥身份验证,系统为我生成了此密钥 afw92iej83foijofn23
。
当我在 http://localhost/drupal/admin/build/services/browse/node.get
检查 node.get
时,我发现它现在需要 4 个额外的必需参数stringhash
、stringdomain_name
、stringdomain_time_stamp
、stringnonce
。
参数 (6)
- stringhash(必需) 有效的 API 密钥。
- stringdomain_name(必需) API 密钥的有效域。
- stringdomain_time_stamp(必需) 用于散列密钥的时间戳。
- stringnonce (必填) 一次使用nonce也使用了hash key。
- intnid(必需)节点 ID。
- arrayfields(可选) 要返回的字段列表
似乎第一个参数不仅仅是 API 密钥,而是与其他字段一起进行哈希处理的哈希 API 密钥。如何生成此 API 密钥? drupal 是否有一个顺序或特定方式希望我散列密钥?
I'm testing the Drupal services module and it's working fine. I now switched from no key to a key authentication, and the system generated this key for me afw92iej83foijofn23
.
When I inspect node.get
at http://localhost/drupal/admin/build/services/browse/node.get
I see that it now needs 4 extra required parameters stringhash
, stringdomain_name
, stringdomain_time_stamp
, stringnonce
.
Arguments (6)
- stringhash (required) A valid API key.
- stringdomain_name (required) A valid domain for the API key.
- stringdomain_time_stamp (required) Time stamp used to hash key.
- stringnonce (required) One time use nonce also used hash key.
- intnid (required) A node ID.
- arrayfields (optional) A list of fields to return
It seems the first argument isn't just the API key but a hashed API key, hashed with the other fields. How do I generate this API key? Is there an order or a specific way that drupal expects me to hash the key?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
所需的哈希值是使用 API 密钥进行哈希处理的以下字段:
时间戳 - unix 时间戳格式的当前时间。
域 - 您为上面的域输入的值。
Nonce - 随机值。
方法 - 您要调用的服务方法,例如 node.load
一些 Drupal 代码作为示例:
此示例来自此处
http://drupal.org/node/394224
The hash value required is the following fields hashed with the API Key:
Timestamp - Current time in unix timestamp format.
Domain - The value you entered for domain above.
Nonce - A random value.
Method - The services method you want to call e.g. node.load
Some Drupal code as an example:
This example is from here
http://drupal.org/node/394224