无法直接传输的字段,用url_encode还是用base64?

问题描述:

在用一个某开源插件做封装,想要传一些参数进去。

多数字段都是普通字符串参数,但是有一个字段传的是json,结果发现这个插件一看到大括号和双引号就识别错误了。

不想改这个插件的源码,考虑自己传进去的时候转译一下。实测url_encode和base64都可用。

没有任何加密需求(传输走的https。两端接口的这个字段都是公开的,谁看到都无所谓)。

想知道url_encode和base64哪个更好

阅读 5.3k
3 个回答

php中使用url_encode是不区分英文不变的,而且对于二进制效率也不高;base64兼容性好点,但是生成的编码会比数据源多33%左右。

不是urlencode?前者适合于URL里的参数,后者更适合传输二进制数据。功能上其实没什么差别

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