刚刚开始以角度进行身份验证。我经常阅读的是使用标头传递一个令牌,如:$http Auth Headers in AngularJS 我的问题是为每个请求传递令牌到后端使用标头的主要原因是什么?这只是为了更清洁的解决方案还是性能?
答案 0 :(得分:0)
如果您与服务器的连接是HTTPS,那么HTTP HEADERS也会被加密。查询参数不在哪里。
答案 1 :(得分:0)
使用标题不是一个Angular的东西,许多API使用这些,以便例如服务器可以通过仅检查标题而不是请求正文来确定是否应该允许客户端快速访问。这样可以更好地分离身份验证和授权功能之间的关注点,以及服务器上的有效负载处理。
上游服务器(可能有多个层)可以添加和删除标头,并且通常比请求正文中的数据更有效地路由和授权您的请求。
标头还会将身份验证数据保留在URL请求参数之外,这些参数看起来更干净,但也会停止在浏览器历史记录中显示的身份验证数据等。
一个缺点可能是,如果您通过网络代理提出请求,代理可能会删除某些标头,特别是如果它们是非标准名称。