Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 将身份验证令牌添加到默认标头与使用$http拦截器相比_Angularjs_Authentication_Token_Jwt - Fatal编程技术网

Angularjs 将身份验证令牌添加到默认标头与使用$http拦截器相比

Angularjs 将身份验证令牌添加到默认标头与使用$http拦截器相比,angularjs,authentication,token,jwt,Angularjs,Authentication,Token,Jwt,我一直在深入研究Angular和Express之间的身份验证,并决定在JWTs和npmjsonwebtoken包中使用令牌身份验证。我已经在服务器端完成了所有设置,并且正在客户端接收令牌,但是现在我需要知道如何让它在每个请求中发送令牌 根据我的发现,大多数资源都建议使用$http拦截器来转换每个传出的请求。但是工作人员总是在.config块中使用$httpProvider.headers.defaults.common[“Auth”]=token,这对我来说似乎简单得多 但是在上一篇文章中被接受

我一直在深入研究Angular和Express之间的身份验证,并决定在JWTs和npm
jsonwebtoken
包中使用令牌身份验证。我已经在服务器端完成了所有设置,并且正在客户端接收令牌,但是现在我需要知道如何让它在每个请求中发送令牌

根据我的发现,大多数资源都建议使用$http拦截器来转换每个传出的请求。但是工作人员总是在
.config
块中使用
$httpProvider.headers.defaults.common[“Auth”]=token
,这对我来说似乎简单得多

但是在上一篇文章中被接受的答案是使用拦截器会更好,但他没有给出原因


任何洞察都会很有帮助。

经过一系列的研究,似乎最好的方法是通过拦截器。在
.config
.run
块中执行设置可能有助于检查用户在首次加载应用程序时是否已通过身份验证(如果本地存储中有令牌),但无法处理动态更改,如加载应用程序后注销或登录。我很确定您可以通过$http默认头来完成,但也可以在一个地方完成

希望这对将来的人有帮助