如何添加JWT生成的token在请求头中

摘要:
前言当我们使用JWT进行用户身份验证时,我们登录以生成相应的令牌,将其添加到请求参数中,并将其发送到后台以提供相关的权限验证。此时,我们需要使用两种方法来传输请求头参数。

前言

在我们使用JWT来做用户的验证时,我们登陆生成对应的token,并加入到请求的参数中发送到后台提供相关的权限校验。这个时候我们需要使用到传递请求头参数传递的问题,下面是两种方式。

1.ajax提交方式

1).方法一:

$.ajax({
type: "GET",
url: "/access/logout/" + userCode,
headers: {'Authorization': token}
});
上面的方法一是我提交的方式

如何添加JWT生成的token在请求头中第1张

请求成功后

如何添加JWT生成的token在请求头中第2张
2).方法二:

$.ajax({
type: "GET",
url: "/access/logout/" + userCode,
beforeSend: function(request) {
request.setRequestHeader("Authorization", token);
},
success: function(result) {
}
});
2.anjular添加token到header中的方式

1.自定义Http方法,全局使用自动添加Token到Header中,或者使用拦截器,方法类似。

import {Observable} from 'rxjs/Observable';
import {Injectable} from '@angular/core';
import {
Http,
RequestOptionsArgs,
RequestOptions,
Response,
Headers
} from '@angular/http';

const mergeToken = (options: RequestOptionsArgs = {}) => {
const newOptions = new RequestOptions({}).merge(options);
const newHeaders = new Headers(newOptions.headers);
const jwt = localStorage.getItem('jwt');
if (jwt) {
newHeaders.set('Authorization', jwt);
}
newOptions.headers = newHeaders;
return newOptions;
};

@Injectable()
export class MyHttp {

constructor(private http: Http) {
}

get(url: string, options?: RequestOptionsArgs): Observable<Response> {
return this.http.get(url, mergeToken(options));
}

post(url: string, body: any, options?: RequestOptionsArgs): Observable<Response> {
return this.http.post(url, body, mergeToken(options));
}

put(url: string, body: any, options?: RequestOptionsArgs): Observable<Response> {
return this.http.put(url, body, mergeToken(options));
}

delete(url: string, options?: RequestOptionsArgs): Observable<Response> {
return this.http.delete(url, mergeToken(options));
}

patch(url: string, body: any, options?: RequestOptionsArgs): Observable<Response> {
return this.http.patch(url, body, mergeToken(options));
}

head(url: string, options?: RequestOptionsArgs): Observable<Response> {
return this.http.head(url, mergeToken(options));
}

}

免责声明:文章转载自《如何添加JWT生成的token在请求头中》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇NET开源项目使用Jmeter录制脚本并调试下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jwt 认证规则

目录 jwt 认证规则: 介绍: 内容: 核心算法: 签发算法: 校验算法: 刷新算法: django-rest-framework-jwt 自定义配置: 模块的使用: _check_payload 方法 : _check_user 方法: jwt 认证规则: 介绍: jwt: json web token 优点:...

微信开放平台开发——网页微信扫码登录(OAuth2.0)

1、OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内...

防止Web表单重复提交的方法总结

在Web开发中,对于处理表单重复提交是经常要面对的事情。那么,存在哪些场景会导致表单重复提交呢?表单重复提交会带来什么问题?有哪些方法可以避免表单重复提交? 表单重复提交的场景 1.场景一:服务端未能及时响应结果(网络延迟,并发排队等因素),导致前端页面没有及时刷新,用户有机会多次提交表单 2.场景二:提交表单成功之后用户再次点击刷新按钮导致表单重复提交...

WebApi使用Token(OAUTH 2.0方式)

1.在项目中添加引用 Microsoft.AspNet.WebApi.Owin Microsoft.Owin.Host.SystemWeb Microsoft.Owin.Security.OAuth Microsoft.Owin.Security.Cookies Microsoft.AspNet.Identity.Owin Microsoft.Owin.C...

jwt token

jwt使用配置: settings文件中添加: REST_FRAMEWORK = { # 异常处理 自定义的异常处理类 'EXCEPTION_HANDLER': 'drf_meiduo.utils.exceptions.exception_handler', 'DEFAULT_AUTHENTICATION_CLASSES': (...

微信小程序之发送模板消息(通过openid推送消息给用户)

一、获取access_tokenaccess_token是接口调用的凭证,目前有效期为两个小时,需要定时刷新,重复获取将导致上次获取的access_token失效。(注:不建议每次调用需要access_token的接口,都去重新获取access_token,会导致失败)获取access_token的接口地址: https://api.weixin.qq.c...