【发布时间】:2011-06-21 17:47:31
【问题描述】:
我想要什么
我希望能够在不发送电子邮件的情况下重置用户密码。我还需要通过 REST 执行此操作(用于信息亭系统)。
所以我需要:
- 获取具有特定用户名的用户
- 重置该用户的密码
尽我所能,我无法使用用户名获取用户。
问题
在我通过 REST 使用管理员用户登录后:
GET on @987654321@。
根据 REST 文档,这应该会获取名称为 user 的用户。
我收到 200 响应,但正文中没有返回任何内容。
我的尝试
从 ID 获取节点
以管理员身份登录后,我可以:
获取http://mydomain.com/rest/user/1
这可行,在响应中返回用户 1 的详细信息。但我需要通过用户名搜索用户。
不同的 GETs
GET on http://mydomain.com/rest/user/admin
GET on http://mydomain.com/rest/user/account/name/admin
GET on http://mydomain.com/rest/user?account[name]=admin
GET on http://mydomain.com/rest/user?uid=1
GET on http://mydomain.com/rest/user/retrieve?uid=1
GET on http://mydomain.com/rest/user?account[uid]=1
所有这些都失败了。
节点而不是用户
http://mydomain.com/rest/node/1 上的 GET 有效,但 http://mydomain.com/rest/node?nid=1 给了我一个 200 响应,正文中没有任何内容。
所有用户列表
GET on @987654323@ 也不显示所有用户的列表。我又得到了一个 200 的空身体。
更多详情
- 我正在使用 Drupal 6.22 安装。
- 我已经安装了服务模块 (3.0 RC1) 和 REST Server (2.0 beta 1)。
- 我已经安装了会话身份验证模块。
- 我已经在会话身份验证开启和关闭的情况下尝试了上述方法。
- 我已经为我设置的 REST 端点启用了所有节点资源和用户资源。
- 我已经尝试过上面有和没有干净 URL 的方法,但似乎没有任何区别。
问题
如何获取具有特定用户名的用户?我做错了什么?
更新
我已经卸载然后重新安装了服务模块,我对 REST 服务器做了同样的事情。我还将我的 CTools 版本回滚到最新推荐的版本。我添加了一项全新的服务,以防它被损坏。我所做的一切都不起作用。令人沮丧!
更新 2
我找到了问题,但想要一个更持久的解决方案。事实证明,由于表命名,这是一个错误。查看我当前接受的答案。
【问题讨论】:
标签: web-services drupal drupal-6 httpwebrequest