java吧 关注:1,302,498贴子:12,854,732

大佬们,html只能跨域吗?

只看楼主收藏回复

之前学的jsp,项目里如果把jsp换成html,html又是静态文件,就只能是跨域访问吗?还有一个问题就是html之间又怎么传值呢?


IP属地:江苏1楼2020-11-21 20:11回复
    用HTML的话一般都是通过ajax直接向后台接口请求数据,也有用模板引擎的


    IP属地:浙江3楼2020-11-21 21:05
    收起回复
      2026-05-08 17:44:08
      广告
      不感兴趣
      开通SVIP免广告
      Html怎么跨域我也不清楚,不过传值可以在地址栏拼接的方式传值


      IP属地:北京来自Android客户端5楼2020-11-22 09:43
      收起回复
        怎么可能呢,其实能做的东西还挺多的呀,好好加油吧


        6楼2020-11-22 10:36
        收起回复
          jsp之间是怎么传值的?


          来自Android客户端9楼2020-11-23 16:45
          收起回复
            跨域和html有什么关系


            IP属地:江西来自Android客户端10楼2020-11-25 20:01
            收起回复
              引入JS文件


              IP属地:广东来自Android客户端11楼2020-11-30 00:08
              回复
                放在一个JavaWeb工程里,前端页面可以用JSP、模板引擎freemarker、thymeleaf等,放在不同的工程里,也就是前后端分离,前端是跨域访问后端服务的


                12楼2020-11-30 00:47
                回复
                  2026-05-08 17:38:08
                  广告
                  不感兴趣
                  开通SVIP免广告
                  用不用html和跨域没有一毛钱的关系,楼主的理解有点问题,你把为什么用html就会跨域解释一下,我们就知道你问题在哪了


                  IP属地:江苏13楼2020-11-30 10:47
                  收起回复
                    如果html也是放在tomcat下,或者使用nginx则不存在跨域,若静态资源使用nginx,后端使用tomcat且没代理,那确实存在跨域。


                    IP属地:四川14楼2020-12-01 08:58
                    回复
                      跟html有什么关系,htm只是静态的,只是用来展示而已。所有的数据请求都是由js来完成的。jsp只是把js应该干的自己干了,实际上jsp属于java,因为你可以看到他需要解析,编译后生成的都是子节码。


                      IP属地:江苏来自Android客户端15楼2020-12-01 09:01
                      回复
                        直接了当的给你说吧,如果你用模板引擎 是不存在跨域的


                        IP属地:江苏来自Android客户端16楼2020-12-01 09:07
                        收起回复
                          先搞明白啥是跨域……


                          IP属地:辽宁17楼2020-12-01 14:38
                          回复
                            两种方案,看下你是哪一种
                            一.没有nginx服务器
                            如有一个springboot 项目,可以将html文件放在项目里面,通过controller 访问html文件,
                            由于你的html文件是通过controller得到的,比如你的项目名是 test
                            你通过 http://localhost:8080/test/html/index 这个链接访问到了index.html,那么你的js中url类似“/test/XXXX”,就不属于跨域了,可以正常请求ajax
                            二.如果html是通过nginx 服务器访问
                            比如你通过 http://localhost 就能访问index.html (nginx 配置监听端口80,index 指向index.html)
                            那么你想让index.html 引用的js中ajax请求的ulr 同样通过“/test/XXX”,能够不跨域访问java服务,只需配置下nginx的代理转发,如下:
                            location /test {
                            proxy_pass http://localhost:8080;
                            }
                            解释下:location /test 指 nginx 通过80端口监听到以“/test” 开始的url请求,里面的内容是指nginx 将请求转发到 http://localhost:8080,也即请求最终转发到了java 服务端,通过nginx转发同样不需要跨域
                            补充说明:很多项目前后端分离,都是采用nginx转发的方式,把静态页面部署在nginx服务器下面,通过nginx服务器转发ajax请求到java服务端
                            关于页面传递参数:请通过session进行


                            18楼2020-12-01 15:35
                            收起回复
                              2026-05-08 17:32:08
                              广告
                              不感兴趣
                              开通SVIP免广告
                              还在一个项目里面就不存在跨域


                              IP属地:上海19楼2020-12-01 17:42
                              回复