通过curl方式请求Mongo项目,只要传输参数中含有图片base64字符串,两项目间签名校验就会失败,求教原因。

新手上路,请多包涵

通过curl方式请求Mongo项目,只要传输参数中含有图片base64字符串,两项目间签名校验就会失败,求教原因。

在一个项目通过curl请求另一个项目,原本项目间签名校验是正常的,但是今天通过修改body中参数,会出现签名校验失败得情况(签名校验这块代码没动过),猜测是因为body中设有图片base64字符串,请问有没有大佬遇见过相关问题或类似的,这是什么原因导致的呢

阅读 1.9k
1 个回答

url传base64可能有两个问题,一个是太长,url本身长度有限(好像是2k),太长就会丢,一般签名都会放在末尾,因此可能造成丢失。
另一个是base64字符串包含有=+/这三个对于url有意义的字符,因此base64如果用于url传输,需要替换掉这三个字符或者进行encodeURI编码base64字符串。
暂时能想到的就是这两个

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏