远浅的日志空间
理解他人,内省自己

那些年,那些让人掉发的bug。

作者: 远浅发表于: 2019-09-24 15:08分类: 技术

font-weight数值设置字体加粗无法生效

原因:这是因为你指定的字体在用户的系统不存在,所以导致无法加粗。

解决:不用数值设置可以生效,或者使用引入Google字体库

自动部署服务前端资源404

原因: 部分应用实例未成功更新,导致了负载均衡路由到了未更新的应用实例,出现404。

解决: 临时解决-强制更新service。

权限中间件下发的token无法通过后台鉴权接口

原因: 

1. 权限中间件 => 生成token(未经过Encode) => 后台系统通过权限 => 下发到前端。

2. 前端带上token => 被Encode => 权限中间件 => token(被Encode) => 后台系统拒绝 => 前端显示未登录。

解决: 生成token时不带奇奇怪怪的字符。

Golang的ioutil.ReadAll函数导致后续无法读取请求的body

原因:函数会消费掉stream。

解决:ioutil.NopCloser函数重新赋值。

Refused to set unsafe header "Cookie"

原因: 同事尝试在ajax请求中手动设置cookie,前端并不允许这样做。Stack Overflow 

解决: 移除相关代码,前端请求会自动附带相关cookie。

MySQ Index column size too large. The maximum column size is 767 bytes

原因:5.6的默认设置和5.7的默认配置不一致。

解决:更改5.6的默认配置或者直接升级5.7,建议是用新版的MySQL。

PWA页面偶尔无法加载图片资源

原因:某些历史图片资源是http链接,pwa无法加载

解决:链接资源使用正则替换掉所有传入协议。

 url.replace(/^http(s?):\/\//i, "//");

SSR渲染 用户信息错误的被渲染

原因: 带有token的渲染请求被缓存,导致用户信息被共享。

解决:如果页面带有token,不进行数据缓存。

Rancher 部署k8s服务无法暴露到公网

原因:k8s默认服务的端口范围是30000-32767。

解决:修改暴露端口到合适的范围。

微信安卓浏览器video标签层级问题

原因:兼容问题,微信浏览器内核经过魔改。

解决:添加x5指定标签。微信x5浏览器指南 

React父组件列表数据更新传入子组件不生效

原因:子组件没有触发更新。

解决:给子组件一个不固定的key。

安卓WebView里的H5页面cookie问题

原因:多次跳转,如果安卓没有特别处理,会丢失cookie。(顺带还有无法清除cookie....,单页面reload会有问题)

解决:尽量不多次跳转,不使用cookie作为接口凭证。或者寻求客户端解决方案。

WebView里的Nextjs H5页面禁止缩放失败

原因:meta viewport标签被默认覆盖了。

解决:在_app.tsx覆盖回去。

判断是否是App的WebView失败。

原因:检测方法使用window.NativeInterface 和iOS的 webkit.messagehandler 和某些社交软件重名了导致判断失败。

解决:检测WebView是否有指定的方法。

WebView自动带上cookie请求接口失败

原因:WebView可能存在多个重名token,前端请求自动带上了最为匹配的token,导致最后请求接口凭证不正确。

解决:客户端清空WebView的token,然后设置客户端Token。(安卓的清空token方法可能不大靠谱....)

赠人玫瑰, 手有余香。🌹
打赏
发表评论
评论列表
评论努力加载中