gpt4 book ai didi

rest - Meteor RESTful 身份验证。是否可以?

转载 作者:行者123 更新时间:2023-12-04 14:58:26 24 4
gpt4 key购买 nike

我已经四处搜索,但找不到对这个问题的满意答案。

我有一个用户登录并创建内容的 meteor 网站。我还想创建一个能够与网站交互的手机应用程序,我希望用户登录手机应用程序并访问网站上的相同内容。很正常。

我已经创建了一个基本的 REST API 来使用陨石包访问集合 HTTP.publish .它在没有任何用户信息的情况下工作(无身份验证),但现在我想使用 userId GET 方法和集合的 Meteor.allow 规则中访问当前用户。

所以我目前正在努力解决如何在 REST 请求中告诉meteor,用户的 id,即使只是在测试。我以为我可以得到 Accounts._storedLoginToken浏览器中的有效用户,并使用它来测试 CURL。就像是
curl -H "X-Auth-Token: asdklfjasldfjlsadkjf" -H "Content-Type: application/json" -d '{"name":"A Name","description":"Testing description"}' http://localhost:3000/api/places
我试过这个,但没有任何乐趣,我得到了一个至少很好的 403。

我的问题是这样的:

  • 创建的 token 是否特定于客户端(即使用主机 url 或其他内容进行哈希处理)?
  • 有bcrypt改变方式X-Auth-Token用来?如果不是我在 curl 命令中做错了什么。
  • DDP 是创建有效 token 的唯一方法,还是我可以创建一个 API 调用来在服务器上创建 token ,即使现在只是传递纯文本凭据?

  • 例如 /api/login?user=shane&pwd=qwerty => 返回 token我可以在 curl 请求中使用。

    我真的坚持这一点,所以任何指向我正确方向的东西都会受到赞赏。我还注意到 http.publish还没有创建登录/注销方法,所以可能没那么容易。

    最佳答案

    几天前,我开始开发一个对身份验证有类似要求的应用程序。我发现Differential 的RESTstop2 最近在0.6.0 版本中升级了他们的身份验证支持,以支持Meteor 中新添加的Bcrypt 加密。

    您只需将用户名和密码作为 URL 参数或正文发送,如下所示:

    curl --data "password=testpassword&user=test" http://localhost:3000/api/login/

    并且服务器将返回以下内容(如果凭据正确):
    { success: true, loginToken: "f2KpRW7KeN9aPmjSZ", userId: fbdpsNf4oHiX79vMJ }

    在您向服务器发出的每个请求中,包括 loginToken 和 userId 作为 header 。

    你应该检查一下:

    文档: http://github.differential.io/reststop2/

    Github: https://github.com/Differential/reststop2

    关于rest - Meteor RESTful 身份验证。是否可以?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24597145/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com