PassportJS - GET请求中的登录凭据?

时间:2013-10-28 01:56:26

标签: javascript node.js rest authentication passport.js

我正在开发一个RESTful Web应用程序。我希望用户注册通过 POST 请求(请求正文中的用户名和密码),用户登录通过 GET 请求(查询中的用户名和密码)。

PassportJS documentation似乎表明Passport希望凭据位于请求体(它解析)中。我不太明白它如何与GET请求一起工作,因为它们没有正文(通常,如果我理解正确的话)。

我将如何使这项工作?这是一个坏主意吗?如果是,是否有RESTful替代方案?

1 个答案:

答案 0 :(得分:2)

是的,这是一个坏主意。 GET请求进入浏览器历史记录和服务器日志文件,在地址栏中可见,可以由代理缓存等。这违反了HTTP语义和安全性。只需按照行业最佳实践进行登录,并节省构建实际应用程序的能量。如果它给你温暖的模糊,你可以认为登录是会话资源的CREATE操作,这是通过REST的POST请求完成的。