V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xiaopengzi
V2EX  ›  程序员

jsp 页面+引入的 vue.js 令人头皮发麻我快窒息了 求救~~ 无论是大佬还是帅哥,帮我看看吧 555

  •  
  •   xiaopengzi · 2019-09-19 14:46:17 +08:00 · 5173 次点击
    这是一个创建于 1883 天前的主题,其中的信息可能已经有所发展或是发生改变。
    首先有一个 jsp 页面,也配置相关路径 就叫他 one.jsp 吧

    这个页面大概长这样:
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
    <c:set var="root" value="<%=request.getContextPath()%>"></c:set>
    <!DOCTYPE html>
    <html class="orl">
    <head>
    <meta charset="UTF-8">
    <title>title</title>
    <%@include file="/WEB-INF/view/wechat/wxInclude.jsp"%>

    </head>
    <body>
    这里还有 jsp 的东西,
    <div id="app">
    引入的 vue 引入了路由,做了好几个组件
    </div>
    <script>
    console.log('${root}') //这个打印出来是项目的根径
    </script>
    各种 js 引入
    </body>
    </html>

    本地调试的时候
    我给 vue 的 axios 配置
    axios.defaults.baseURL = 'http://127.0.0.1:8087/';
    //axios.defaults.baseURL = './';
    Vue.prototype.$http = axios;
    然后请求
    var url = 'jxe/wechat/queryEmployeesByDepartmentId';
    this.$http.post(url,{
    'id': 492
    }).then(function(res){
    })

    就可以愉快的玩耍了,
    那么我现在要上线,

    该怎么办了?我犯了什么错么?求打醒 求指导
    第 1 条附言  ·  2019-09-20 08:50:56 +08:00
    做惯了前后端分离的项目,以前只要打包出来扔到服务器上就完事了,

    现在这在 jsp 里引入 vue.js ,
    最关键的是数据接口都不是向外暴露的(不知道这句话有没有问题?),

    在用 ajax 获取数据的时候,
    对 axios.defaults.baseURL 就不知道怎么操作了,,
    后端也只会说告诉说页面加载不出来,锅扣到我头上,



    18 条回复    2019-09-20 17:31:34 +08:00
    azh7138m
        1
    azh7138m  
       2019-09-19 14:52:22 +08:00
    > 我犯了什么错么?

    语文没学好。
    Caballarii
        2
    Caballarii  
       2019-09-19 14:53:02 +08:00
    什么问题的不说,解决啥
    o0
        3
    o0  
       2019-09-19 14:54:03 +08:00
    没用 cli 的话,直接往测试服务器上扔吧。
    AreYou0k
        4
    AreYou0k  
       2019-09-19 15:49:33 +08:00   ❤️ 1
    应该是替换一下 baseURL 吧
    arrow8899
        5
    arrow8899  
       2019-09-19 16:11:40 +08:00
    本地怎么运行的?没搞明白你怎么把 jsp 和 vue 文件混在一起的
    chenlaocong
        6
    chenlaocong  
       2019-09-19 20:21:27 +08:00
    我以前也改过 Vue 和 jsp 混合的代码
    chenlaocong
        7
    chenlaocong  
       2019-09-19 20:22:38 +08:00   ❤️ 1
    你前端可以读取 url 的地址 判断是线上的还是本地的地址,再根据 url 修改请求地址
    redbuck
        8
    redbuck  
       2019-09-19 22:30:22 +08:00
    改过.net 的 mvc 模板页面(.cshtml 那种,类似 jsp)

    看到一堆编辑器都不认识的语法头都大了。
    干脆用 webpack 写了多页构建配置。
    每个 entry 生成一个 cshtml,一个对应的 js,cshtml 空荡荡的,只引用一个 layout (后端的框架页面)以及那个 js。
    这样我就只要写熟悉的 js,vue,后端模板完全无关。
    xiaopengzi
        9
    xiaopengzi  
    OP
       2019-09-20 08:38:03 +08:00
    @AreYou0k 敢问老哥,上线得时候 baseURl 换成什么?我可以获取到整个 jsp 所在的项目根目录,因为我也不懂在汤姆猫里上线之后到底是个什么情况,
    xiaopengzi
        10
    xiaopengzi  
    OP
       2019-09-20 08:39:19 +08:00
    @redbuck 感谢老哥提供的思路,值的研究鼓捣一下
    xiaopengzi
        11
    xiaopengzi  
    OP
       2019-09-20 08:41:31 +08:00
    @chenlaocong 我昨天下班之后要 baseURL 用 windows.laction 之类的方法,拼了一个完整的地址出来,本地没问题,不知道线上会怎么样,今天试一下
    xiaopengzi
        12
    xiaopengzi  
    OP
       2019-09-20 08:58:00 +08:00
    @azh7138m 是我没表达清楚 不好意思 老铁,
    因为我也可能太大胆了,在公司老旧的 jsp 项目里面引入 vue

    (我做的都是只给微信浏览器访问的东西,引入一些 ui 也比较方便,交互写起来简单很多),
    所以,这样做可能本身就是一个错
    AreYou0k
        13
    AreYou0k  
       2019-09-20 09:38:25 +08:00   ❤️ 1
    @xiaopengzi 你可以改成 localhost:8087 或者 0.0.0.0:8087 试试, 实在不行问后台.这个一般是上线后后台或者运维提供的
    azh7138m
        14
    azh7138m  
       2019-09-20 10:40:59 +08:00
    @AreYou0k baseURL 当然是配置接入层 /服务器地址,这个就是请端发请求的时候用到的

    vue 不就是宣称自己 Progressive 吗?你这做法就是它着重处理的场景,其他框架通常不能与上个世纪的技术优雅共存。
    azh7138m
        15
    azh7138m  
       2019-09-20 10:41:29 +08:00
    @azh7138m 前端发请求
    LongMaoz
        16
    LongMaoz  
       2019-09-20 11:34:56 +08:00   ❤️ 3
    可能这就是屎山的起源吧
    Jie0zero
        17
    Jie0zero  
       2019-09-20 14:39:09 +08:00   ❤️ 1
    上线...
    baseURL 去掉域名部分就好了,会自动读服务器本地域名的
    sadfQED2
        18
    sadfQED2  
       2019-09-20 17:31:34 +08:00 via Android
    @LongMaoz 哈哈哈,下一个接手的人不知道内心什么感受
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3501 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:06 · PVG 08:06 · LAX 16:06 · JFK 19:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.