前几周遇到一个天坑,为了解决此问题花费了大把的精力和时间,特此记录一下!
需求:移动端需要把用户的设备型号传递给服务器端,方便服务器进一步数据分析
方案:APP通过在网络请求头中新增一个字段device_type
,将设备型号传递给服务器
示例:
{'device_type': deviceType ?? 'unknown'}
结果:
- 本地服务器打印网络请求日志中可以获取到
device_type
该参数值
2.同样的代码,远程服务器打印网络请求日志中无法获取到device_type
该参数值
解决该问题的期间:个人一度怀疑是后端小伙伴部署到远程服务器的代码不是最新的,就差干一架了;几经确认和核对,确认代码没问题,只能从本地服务器和远程服务器之间的差别入手解决问题!
最终锁定问题:Ngix反向代理会自动忽略带_
的请求头
解决方案:
将_
替换成-
示例:
{'device-type': deviceType ?? 'unknown'}