首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >api密钥无效

api密钥无效
EN

Stack Overflow用户
提问于 2011-08-17 18:49:40
回答 1查看 608关注 0票数 0

我正在研究如何使用Drupal6中的服务模块从一些JSON格式的自定义视图中获取数据。我关注了http://drupal.org/node/308629上的一篇文章,创建了这个项目的vb版本(推送到https://sharpred@github.com/sharpred/ConsoleApplicationDrupal.git)。

当我第一次运行我的代码时,我得到了“无效的API密钥”,随后的运行返回"token之前已经被用于一个请求。用另一个随机数密钥重试“。第二个错误有点虚假,因为我的代码每次运行时都会创建一个新的随机随机数。

我还注意到,第一次运行在services_timestamp_nonce表中创建了一个条目,该条目只包含时间戳,但不包含现时值或域值。如果我删除此记录,它将返回到"invalid api key“消息。

代码未经验证即可运行,来自站点上的/admin/build/services/browse/views.get的方法调用也可运行。

你有什么想法来解释为什么这个不起作用吗?

在google上搜索,“无效的api密钥”最常见的来源似乎是一个人使用的时间戳是错误的,或者api密钥与创建散列时使用的域不匹配。据我所知,这两种情况都不是真的。我创建了用于在https://gist.github.com/1151222上创建时间戳和散列的代码要点

有没有人能帮助我们让这个过程工作起来?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-18 16:17:38

在浏览了服务模块的代码后,我发现了这一点。我的多部分表单中的一些值没有用引号括起来,因此services_key_auth模块将其作为空值处理。这意味着在第一次传递时,只有时间戳被写入现时表,并且由于引号的原因,计算出的散列与我的散列不匹配。在随后的更新中,该模块有效地搜索nonce值为null,并在数据库中找到nonce值时,返回以前使用过的结果。如果其他人遇到这个问题,请拉出上面链接的github项目并查看我的代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7091564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档