在单独的js文件中发送ajax请求的时候,常常涉及到ajax请求路径问题
一般的解决方法如下,在jsp中写如下代码
<script type="text/javascript">
var $path='<%=request.getContextPath()%>';
</script>
在js中调用$path变量
另外还可以在jsp中使用input hidden隐藏域的方式传递
但是,总感觉这2种方式并不是特别的简洁,有什么其他的且有效解决路径问题的方法吗?
在单独的js文件中发送ajax请求的时候,常常涉及到ajax请求路径问题
一般的解决方法如下,在jsp中写如下代码
<script type="text/javascript">
var $path='<%=request.getContextPath()%>';
</script>
在js中调用$path变量
另外还可以在jsp中使用input hidden隐藏域的方式传递
但是,总感觉这2种方式并不是特别的简洁,有什么其他的且有效解决路径问题的方法吗?
13 回答13k 阅读
7 回答2.2k 阅读
4 回答1.5k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
如果ajax的路径与页面路径一致的话,可以直接通过javascript取到
例如,
https://segmentfault.com/q/1010000011093464
更新后版本
如果只添加主机名,而没有添加协议(https/http),ajax会默认为相对路径,因而会在前面补全协议和主机。因此,'getContextPath'需要返回完整的协议+主机名。