zoukankan      html  css  js  c++  java
  • 后端(spring boot)解决跨区域问题

    一.环境:

    前端 vue element-ui

    后端:spring boot

    工具:IDEA Maven Node

    数据库:MySql

    二.首先我们需要了解什么叫跨区域访问问题

    跨区域访问是指:不同域名之间相互访问 

    也就是A网址通过AJAX发送请求访问B网站 A和B在不同IP或者不同端口的时候会出现这个问题

    三:什么是同一个域

    同一协议 同一IP 同一端口 三者一不相同 出现跨区域访问问题

    四:前端vue 跨区域解决方案

    最快的方式是通过安装vue-resource,找到当前前端项目

    输入:npm install vue-resource --save

    然后在需要使用的地方添加vue-resource

     import Vue from 'vue'
     import VueResourse from 'vue-resource';
     Vue.use(VueResourse)
    
     let params=this.ruleForm
                            this.$http.get('http://localhost:8080/login/CheckLogin',{params}).then((res)=>{
                                console.log("res=====>"+JSON.stringify(res))
                            }).catch((res)=>{
                                console.log("res=====>"+JSON.stringify(res))
                            })

    五:后端跨区域解决方案

    后端跨区域比较简单,最好的方法就是添加:@CrossOrigin

    @Controller
    @RequestMapping(value = "/login")
    @CrossOrigin
    public class loginController {
    
        private final Logger logger = LoggerFactory.getLogger(loginController.class);
    
        @Autowired
        UserService userService;
        /**
         * 登录密码校验模块
         */
        @ResponseBody
        @RequestMapping(value = "/CheckLogin", method = RequestMethod.GET)
        @CrossOrigin
        public String CheckLogin(@RequestParam Map<String,Object> map) {
            logger.info("登录操作=>开始入参"+JSON.toJSONString(map));
    
            MessageBean messageBean=new MessageBean();
            messageBean=userService.selectUser(map);
            logger.info("登录操作=>结束"+JSON.toJSONString(messageBean));
            return JSON.toJSONString(messageBean);
        }
    }
    

     即可以解决跨区域问题

     
  • 相关阅读:
    MySQL高性能优化规范建议,速度收藏
    基于 debian 操作系统的 docker 镜像,安装 vim
    Vue 开发经验总结
    DNS 负载均衡
    图解:从单个服务器扩展到百万用户的系统
    defer、return、返回值,这三者的执行逻辑
    goroutine 知识点
    一条SQL语句在MySQL中如何执行的
    架构设计的常用方法
    vue中直接修改props中的值并未给出警告,为啥?
  • 原文地址:https://www.cnblogs.com/ad-zhou/p/10455125.html
Copyright © 2011-2022 走看看