spring boot ajax跨域请求

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/github_39286601/article/details/89788254

spring boot 跨域请求

CORS支持
跨源资源共享 (CORS)是大多数浏览器实现 的W3C规范,允许您以灵活的方式指定授权何种跨域请求,而不是使用一些安全性较低且功能较弱的方法,如IFRAME或JSONP。

从版本4.2开始,Spring MVC 支持CORS。 可以通过使用自定义方法注册bean 来定义全局CORS配置,如以下示例所示:WebMvcConfigureraddCorsMappings(CorsRegistry)

@Configuration
公共 类 MyConfiguration {

	@Bean
	 public WebMvcConfigurer corsConfigurer(){
		 return  new WebMvcConfigurer(){
			 @
			 Override public  void addCorsMappings(CorsRegistry registry){
				registry.addMapping(“/ api / **”);
			}
		};
	}
}

在Spring Boot应用程序中使用带有 注释的控制器方法CORS配置@CrossOrigin不需要任何特定配置。例如

@Controller
@CrossOrigin
public class HelloController {

    @Autowired
    JdbcTemplate jdbcTemplate;

    @ResponseBody
    @GetMapping("/query")
    public Map<String,Object> map(){
        List<Map<String, Object>> list = jdbcTemplate.queryForList("select * FROM canal");
        return list.get(0);
    }

ajax请求

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"/>
    <title>Page Index</title>
</head>
<body>
<h2>跨域请求</h2>
<p id="info"></p>
</body>

<script src="jquery.min.js"></script>
<script>
    $.ajax({
        url: "http://localhost:8080/query",
        type: "get",
        dataType: "json",
        success: function (data) {
            $("#info").html("跨域访问成功:"+data);
        },
        error: function (data) {
            $("#info").html("跨域失败!!");
        }
    })
</script>
</html>

结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/github_39286601/article/details/89788254