url_encode和base64
在用一个某开源插件做封装,想要传一些参数进去。
多数字段都是普通字符串参数,但是有一个字段传的是json,结果发现这个插件一看到大括号和双引号就识别错误了。
不想改这个插件的源码,考虑自己传进去的时候转译一下。实测url_encode和base64都可用。
没有任何加密需求(传输走的https。两端接口的这个字段都是公开的,谁看到都无所谓)。
想知道url_encode和base64哪个更好
不是urlencode?前者适合于URL里的参数,后者更适合传输二进制数据。功能上其实没什么差别
base64编码后的长度比编码前多了1/3,标准的Base64并不适合直接放在URL里传输,有一些Base64的变种,它们将+/=等符号转换为其他符号(如_-)
建议使用rawurlencode
php中使用url_encode是不区分英文不变的,而且对于二进制效率也不高;base64兼容性好点,但是生成的编码会比数据源多33%左右。
ajax基本没什么不能传输,你文中遇到"一看到大括号和双引号",那么在提交之前对字段进行处理下.至于处理方式多种多样,比如数组最简单的序列化和反序列化.
url_encode和base64的更多相关文章
- URL安全的Base64编码
Base64编码可用于在HTTP环境下传递较长的标识信息.在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式.此时,采用Base64编码不仅比较简短,同时也具有不可 ...
- Base64编码
Base64编码 写在前面 今天在做一个Android app时遇到了一个问题:Android端采用ASE对称加密的数据在JavaWeb(jre1.8.0_7)后台解密时,居然解密失败了!经过测试后发 ...
- Android数据加密之Base64编码算法
前言: 前面学习总结了平时开发中遇见的各种数据加密方式,最终都会对加密后的二进制数据进行Base64编码,起到一种二次加密的效果,其实呢Base64从严格意义上来说的话不是一种加密算法,而是一种编码算 ...
- java单向加密算法小结(1)--Base64算法
从这一篇起整理一下常见的加密算法以及在java中使用的demo,首先从最简单的开始. 简单了解 Base64严格来说并不是一种加密算法,而是一种编码/解码的实现方式. 我们都知道,数据在计算机网络之间 ...
- URI编码解码和base64
概述 对于uri的编解码,在js中有3对函数,分别是escape/unescape,encodeURI/decodeURI,encodeURIComponent/decodeURIComponent. ...
- 通过HTML5的Drag and Drop生成拓扑图片Base64信息
HTML5 原生的 Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过 ...
- Base-64 字符数组或字符串的长度无效等问题解决方案
项目特殊需要,调用ActiveX三维控件进行控件某一特殊部位的截图操作,这个截图保存由ActiveX控件控制保存到本地是没问题的,现在需要将这个截图上传到服务器,多人共享,就牵扯到需要读取本地文件…… ...
- android Base64 加密
一 Base64加密 import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStre ...
- When I see you again(加密原理介绍,代码实现DES、AES、RSA、Base64、MD5)
关于网络安全的数据加密部分,本来打算总结一篇博客搞定,没想到东西太多,这已是第三篇了,而且这篇写了多次,熬了多次夜,真是again and again.起个名字:数据加密三部曲,前两部链接如下: 整体 ...
随机推荐
- [redis] redis 命令
- Javabean介绍
1.javabean简介 JavaBean 是一种JAVA语言写成的可重用组件.为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提供符合一致性设计模式的公 ...
- JS获取访客IP+判断归属地+自动跳转
由于公司业务需要,需要对网站特定地区的访客进行不同跳转.比如,上海的用户跳转到“shanghai.url.cn”,南京的用户跳转到“nanjing.url.cn”.下面就是我的实现方法,分享出来,顺便 ...
- oralce 常用sql
查看表空间及其数据文件 SELECT * FROM dba_data_files; 查看用户下的表SELECT * FROM user_tables; 查看用户表的注释SELECT * FROM us ...
- leetcode 230 二叉搜索树中第K小的元素
方法1:统计每个节点的子节点数目,当k>左子树节点数目时向左子树搜索,k=左子树节点数目时返回根节点,否则向右子树搜索. 方法2:递归中序遍历,这里开了O(n)空间的数组. class Solu ...
- 福利来了,现“免费”赠送Spring微服务实战书籍
本书适合拥有构建分布式应用程序的经验.拥有Spring的知识背景以及对学习构建基于微服务的应用程序感兴趣的Java开发人员阅读. 本书籍赠送活动详情,请识别上图二维码☝☝☝☝☝ 书籍推荐 本书教读者如 ...
- 常被问到的十个 Java 面试题
在这篇文章中,我试图收录最有趣和最常见的问题.此外,我将为您提供正确的答案. 接下来,就让我们来看看这些问题. 1. 以满分十分来评估自己——你有多擅长 Java? 如果你并不完全确信你自己或是你对 ...
- React-Error
1. react创建一个单页应用,官网给的命令是ngx create-react-app my-project 2. window上表示,安装失败 3.解放办法:npm install -g crea ...
- 常见IO模型
在socket的通信中,recv,accept,recvfrom(UDP协议接收信息)这些阶段由于需要收到信息,才能继续下面的代码,所以这些阶段叫做阻塞,类似于我们python变成中的input函数, ...
- FastReport预览后直接邮件发送