可参考:
https://blog.csdn.net/She_lock/article/details/86241685
https://blog.csdn.net/weixin_42429220/article/details/107891095
https://www.jianshu.com/p/5cf82f092201?tdsourcetag=s_pctim_aiomsg
黎大神解决的
改一下BladeConfiguration
这个类就可以了
后端代码如下
/**
* 跨域配置
* @param registry
*/
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowCredentials(false)
.allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
.allowedOrigins("*");
}
前端代码
就随便在vs里面写的一个页面,然后用ajax请求一下就可以了
// 注意
// URL地址地址是localhost:10000/blade-auth, 不是localhost:1888/api/blade-auth
// 注意哦,昨天就采坑了 这里
// 请求授权
$.ajax({
type: "POST",
url: "http://localhost:10000/blade-auth/token?account=admin&grantType=password&password=admin&tenantId=000000",
dataType: 'json',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Basic c2FiZXI6c2FiZXJfc2VjcmV0'
},
success: function (response) {
console.log(response);
// 请求业务接口
var accessToken = response.data.accessToken;
$.ajax({
type: "GET",
url: "http://localhost:10000/blade-pms/brand/list?current=1&size=10",
dataType: 'json',
headers: {
'Authorization': 'Basic c2FiZXI6c2FiZXJfc2VjcmV0',
'Blade-Auth': 'bearer ' + accessToken,
},
success: function (response2) {
console.log(response2);
}
});
}
});
问题1:header中为什么要传这个'Authorization': 'Basic c2FiZXI6c2FiZXJfc2VjcmV0'
,以及这个是怎么来的?
原文:https://www.cnblogs.com/longsanshi/p/12740787.html
把c2FiZXI6c2FiZXJfc2VjcmV0
这个,用base64编码的方式,解码后是这样的:saber:saber_secret
是不是有点恍然大悟的感觉了,标识了当前登录的客户端是哪个,以及对应的客户端密钥
数据库对应的地方