一些 web 前后端分离的坑与疑惑

javaee 专栏收录该内容
18 篇文章 0 订阅

最近在在跟前端的哥们写一个小项目,我们采取的是比较暴力的前后端分离开发模式

  • 后端只提供 ajax json 格式的数据接口,
  • 前端解析数据,渲染
  • 相当于 后端和前端分开部署在不同的服务器上

第一个问题

  • ajax 跨域,目前后端解决方案:
  • res.setHeader(“Access-Control-Allow-Origin”, “前端站点 ip”);
  • 这种和 jsoup 都比较常见,主要的疑惑是是否会遇到安全问题

第二个问题

  • cookie 跨域
  • 场景重现:我后端用的 java,如果在我后端服务器的站点上访问 ,浏览器上的 cookie 能存储到了 jsessionid,session 功能无误,但是如果在前端服务器上的站点,每次在站点部署的前端页面里发送 ajax 请求,后端则会识别不了,每次都认为是一个新的客户端访问,http response header 里都会 set cookie
  • 目前的解决方案:主要的疑惑是是否会遇到安全问题

  • 后端: 设置响应头 res.setHeader(“Access-Control-Allow-Credentials”,”true”);

  • 前端处理:
$.ajax({

           url: 'url',

            xhrFields: {

                      withCredentials: true

            },

            crossDomain: true,

            success:function(data){

                console.log(data)

            }

        })

    })
  • 6
    点赞
  • 9
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

javagaorui5944

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值