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

时间:2022-08-28 14:13:09

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

  • 后端只提供 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)

}

})

})