当前位置: 首页 > wzjs >正文

用vuejs做的网站厦门网站seo

用vuejs做的网站,厦门网站seo,洞口做网站的公司推荐,湛江企业建站系统背景 因为在不同的启动环境下,获取上下文路径的方式需要有所调整。在 IDEA 中运行时,路径是基于当前页面的 URL(如 index.html),而在 Tomcat 部署时,它是基于项目上下文路径(如 ssm-project&am…

背景

因为在不同的启动环境下,获取上下文路径的方式需要有所调整。在 IDEA 中运行时,路径是基于当前页面的 URL(如 index.html),而在 Tomcat 部署时,它是基于项目上下文路径(如 ssm-project)。

为了解决这个问题,我们需要动态适配不同的环境,确保无论是本地开发环境还是部署在 Tomcat 中,contextPath 都能够正确获取。

解决方案:

  1. 使用 window.location.origin 获取根路径:这可以帮助我们从当前的 URL 获取正确的协议(http://https)、主机名(localhost 或其他)以及端口号(如 8080)。然后,我们可以利用它来拼接出正确的 contextPath

  2. 使用 window.location.pathname 获取上下文路径:基于 pathname 来获取正确的项目路径。

改进后的代码:

<script type="text/javascript">$(function(){// 获取当前页面的上下文路径var pathname = window.location.pathname;var contextPath = '';// 判断项目是否部署在子目录下(例如 /ssm-project/)if (pathname.split('/').length > 2) {contextPath = pathname.split('/')[1];  // 提取项目名}// 如果 contextPath 为空,说明是根路径(开发环境),设置为 ''if (contextPath === "") {contextPath = "";  // 根路径}// 确保 contextPath 后面有一个斜杠if (contextPath && !contextPath.endsWith('/')) {contextPath += '/';}// 确保 window.location.origin 以斜杠结尾var origin = window.location.origin;if (!origin.endsWith('/')) {origin += '/';}// 打印 contextPath 和最终请求 URL(用于调试)console.log('contextPath:', contextPath);var requestUrl = origin + contextPath + 'Agency/GetMessage';console.log('Request URL:', requestUrl);  // 确保这里打印出来的 URL 是正确的// 执行 AJAX 请求$.ajax({url: requestUrl,  // 使用拼接的 URLsuccess: function (data) {// 处理返回数据console.log(data);},error: function (jqXHR, textStatus, errorThrown) {// 错误处理console.error('请求失败', textStatus, errorThrown);}});});
</script>

代码解释:

  • window.location.pathname.split('/')[1]:这段代码从 pathname 中提取出项目的上下文路径。

    • 在本地开发环境中,window.location.pathname 可能是 /index.html,从中我们可以提取出项目名(如果有的话)。
    • 在生产环境(Tomcat 部署后)中,window.location.pathname 可能是 /ssm-project/index.html,我们可以从中提取出 ssm-project
  • if (contextPath === ""):如果获取的 contextPath 是空字符串(例如,在开发环境中),我们手动将它设置为根路径 /。这样,在开发环境下可以避免路径拼接错误。

  • 确保 window.location.origin 以斜杠结尾:如果 origin 没有以斜杠结尾,则在拼接前加上斜杠。这可以避免在 origincontextPath 拼接时出现重复的斜杠或缺失斜杠的情况。

  • 确保 contextPath 以斜杠结尾:如果 contextPath 不是空字符串且不以斜杠结尾,则添加斜杠。

  • window.location.origin:它会返回协议、主机名和端口号(如 http://localhost:8080),使得无论是开发环境还是生产环境,contextPath 都能正确拼接到 URL 中。

结果:

  • 本地开发环境(IDEA 启动):URL 会拼接成 http://localhost:8080/Login/GetLoginName
  • Tomcat 部署环境:URL 会拼接成 http://localhost:8080/ssm-project/Login/GetLoginName

调试步骤:

打开浏览器的开发者工具(F12),查看控制台输出的 contextPath 和最终拼接的 URL,确保它们符合预期。
检查浏览器中的请求,确保请求的 URL 正确,无论是在 IDEA 还是 Tomcat 中都能正常工作。

总结:

通过检查并确保 contextPath 的正确性和末尾的斜杠,能够确保无论是在本地开发环境还是在生产环境中都能正确发起请求。

http://www.dtcms.com/wzjs/302573.html

相关文章:

  • 石家庄网站建设需要多少钱百度智能云
  • 网站运营情况怎么写郑州seo优化大师
  • 网站的论文怎么写服务营销论文
  • 手机网站的域名怎么做网上销售
  • jsp动态网站开发与实践上海seo搜索优化
  • 网站建设课程下载如何在网上推广自己的公司
  • 做网站需要每年都交钱吗济南seo顾问
  • 自己做电商网站搜索引擎营销的特点是什么
  • c 做的比较牛逼的网站叫什么网站制作平台
  • 服装设计公司有哪些seo免费优化网址软件
  • 环保部网站建设项目验收方案网络推广内容
  • 泰州做网站淘宝app下载量推广
  • 国外网站建站公众号引流推广平台
  • 小微型企业网站建立软件推广赚钱
  • 吕梁网站建设kuyiso国内十大搜索引擎网站
  • 江苏网站建设官网自己如何优化网站排名
  • 单页网站上传教程网络推广员的工作内容
  • 网站制作公司优势免费注册网站
  • 网站建设华科技公司网站的宣传与推广
  • 长春学校网站建设方案咨询网站建设推广专家服务
  • 台州市住房和城乡建设规划局网站网站域名查询官网
  • wordpress新网站什么是软文营销
  • 建设网站宝安区世界军事新闻
  • 网站结构 扁平结构 树状结构北京发生大事了
  • 计算机网站开发悟空建站seo服务
  • 开个网站建设公司多少钱百度一下京东
  • 国际新闻界期刊北京网站优化推广公司
  • 个人网站设计百度百家号官网登录
  • 学校网站建设的申请书云南网站推广公司
  • 网站需要公司备案么郑州网络推广厂家