SpingBoot跨域问题
发布日期:2021-05-08 09:46:39 浏览次数:27 分类:技术文章

本文共 1278 字,大约阅读时间需要 4 分钟。

产生跨域问题的原因市浏览器的同源策略,它是由Netscape提出的一个著名的安全策略。现在所有支持JavaScript 的浏览器都会使用这个策略。

所谓同源是指:域名,协议,端口相同。
如果不同,将会出现跨域问题
前端可通过JSONP来解决跨域,但JSONP只可以发送GET请求
详情请参考

SpringBoot使用CORS来解决跨域问题

pom.xml文件中添加WEB坐标

org.springframework.boot
spring-boot-starter-web

控制器方法CORS配置

@RestController@ResponseBody@RequestMapping("/cors")public class UserController {
/** * 指定接口支持跨域 * @return */ @CrossOrigin @GetMapping("user") public Map
getUser() {
Map
map = new HashMap
(); map.put("code", 200); map.put("msg", "OK"); return map; }}

对类声明的接口都有效,可以将 @CrossOrigin放在类上

@CrossOrigin@RestController@ResponseBody@RequestMapping("/cors")public class UserController {
@GetMapping("user") public Map
getUser() {
Map
map = new HashMap
(); map.put("code", 200); map.put("msg", "OK"); return map; }}

全局CORS配置

新建一个配置类

@Configurationpublic class CustomWebConfiguration {
@Bean public WebMvcConfigurer webConfig() {
return new WebMvcConfigurer() {
@Override public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**") .allowedMethods("*") .allowedHeaders("*"); WebMvcConfigurer.super.addCorsMappings(registry); } }; } }

转载地址:https://blog.csdn.net/l_learning/article/details/97568764 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ElasticSearch之JAVA API简单应用
下一篇:工厂模式

发表评论

最新留言

不错!
[***.144.177.141]2024年04月09日 03时53分31秒