在写友联这个接口时候碰到的问题,使用postman测试返回数据正常,用页面去访问接口报403问题,idea报错信息Closing non
transactional SqlSession
[org.apache.ibatis.session.defaults.DefaultSqlSession@e144d40]
1.postman部分信息
2.前端F12 network页面
其实是很明显的cors error 但是因为第一次写项目不是很熟练,加上前端不太了解,所以也用csdn排查了很久才发现。
3.解决办法
1.在Controller上添加@CrossOrigin
2.使用注册Bean组件的方式文章来源:https://www.toymoban.com/news/detail-794913.html
@Configuration
public class CrossConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**") // 所有接口
.allowCredentials(true) // 是否发送 Cookie
.allowedOriginPatterns("*") // 支持域
.allowedMethods(new String[]{"GET", "POST", "PUT", "DELETE"}) // 支持方法
.allowedHeaders("*")
.exposedHeaders("*");
}
}
4.总结
多做项目,多写bug,不要什么都跟着视频做可以结合自己的知识,活学活用,比如我这个就是没有使用注册bean的方式,觉得在Controller上添加@CrossOrigin更好,但是现在发现还是注册bean的方式更实用文章来源地址https://www.toymoban.com/news/detail-794913.html
到了这里,关于Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSql]三更草堂博客项目,友联接口问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!