Javascript chrome extension的弹簧靴上的交叉原点
在我的spring应用程序中,我有一个方法:Javascript chrome extension的弹簧靴上的交叉原点,javascript,spring,spring-boot,google-chrome-extension,cors,Javascript,Spring,Spring Boot,Google Chrome Extension,Cors,在我的spring应用程序中,我有一个方法: @CrossOrigin(origins="*") @PostMapping("/datum") Datum test(@RequestBody String data) { return repository.save(new Datum(data)); } 我希望所有的应用程序都能访问它,所以我把@CrossOrigin(origins=“/**”)放到中。但当我尝试这样做时,它毫无怨言地运行着 这就是我从chrome扩展发送数据的方式
@CrossOrigin(origins="*")
@PostMapping("/datum")
Datum test(@RequestBody String data) {
return repository.save(new Datum(data));
}
我希望所有的应用程序都能访问它,所以我把@CrossOrigin(origins=“/**”)放到
中。但当我尝试这样做时,它毫无怨言地运行着
这就是我从chrome扩展发送数据的方式:
var request = new XMLHttpRequest();
let url='http://localhost:8080/datum';
let data=JSON.stringify({ "data": body});
request.open('POST', url, true);
request.setRequestHeader("Content-Type", "application/json");
request.send(data);
我的扩展清单:
"permissions": [
"activeTab",
"tabs",
"<all_urls>",
"background",
"http://*/*",
"https://*/*",
"http://localhost:8080/datum"
],
“权限”:[
“活动标签”,
“标签”,
"",
“背景”,
“http://*/*”,
“https://*/*”,
"http://localhost:8080/datum"
],
给我错误403
但客户端仍然无法访问此项,如何解决此问题?在我的
@SpringBootApplication
注释类中,我添加了以下内容:
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**").allowedOrigins("*");
}
};
}
在manifest.json
中:
"permissions": [
"activeTab",
"tabs",
"background",
"http://*/"
]
现在它起作用了