如何通过HTTP为rest API发送凭据

时间:2015-03-23 12:54:16

标签: angularjs rest

HTTP GET api/token的端点需要用户名和密码,因为HTTP GET不能包含JSON正文,我不知道如何应该发送密码。一旦我获得令牌,它应该如何包含在API调用中?只是JSON中的另一个字段或标题?

4 个答案:

答案 0 :(得分:0)

端点api / token应该是HTTP / POST,因此您可以在正文中发送用户名和密码。

然后,一旦您获得了令牌,就应该使用授权标头在其他所有请求中发送令牌。

答案 1 :(得分:0)

没有真正的练习,但只是常见的做法。

  • 如果可能,请将您的路线从GET切换为POST,然后在HTTP正文中发送密码。如果不可能,您需要将参数附加到网址。
  • 检索身份验证令牌后,请使用您的令牌作为值为每个经过身份验证的请求添加标头(例如" MyCompany-Auth":" 0123456789&# 34。)

另一个好的做法是对您的API调用使用SSL (TLS)。如果您不想支付太多费用,可以使用自签名证书。

答案 2 :(得分:0)

您应该利用标头Authorization,这是在RESTful服务调用中提供凭据的常用方法。

此链接可为您提供更多提示:https://templth.wordpress.com/2015/01/05/implementing-authentication-with-tokens-for-restful-applications/

希望它可以帮到你, 亨利

答案 3 :(得分:0)

我建议使用可以在URLPOST参数或HTTP标头中使用的JSON Web Tokens

关于JWT的好文章是this