1.页面编码
在网页设置网页编码 在<head></head>中加入设置特定html标签
<meta charset="utf-8" /> 这样页面的编码就会变成utf-8
如果没有设置编码就会使用默认的编码,而浏览器默认编码与之不同就会出现乱码
常用的有三种格式分别是 utf-8、gbk、gbk2312
2.ASCII编码
ASCII (American Standard Code for Information Interchange):美国信息交换标准代码是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准 ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符。
3.HTML编码
实体 http://www.w3school.com.cn/html/html_entities.asp
HTML编码的存在就是让其在代码中和显示中分开, 避免错误
命名实体:构造是&加希腊字母
字符编码:构造是&#加十进制
HTML字符实体转换 http://www.qqxiuzi.cn/bianma/zifushiti.php
ASCII码或unicode字符编码,浏览器解析的时候会先把html编码解析再进行渲染。但是有个前提就是必须要在“值”里,比如属性src里,但却不能对src进行html编码,不然浏览器无法正常的渲染。
十六进制
1 <img src="https://www.baidu.com/img/bd_logo1.png"> 2 <img src="https://www.baidu.com/img/bd_logo1.png">
十进制
1 <img src="https://www.baidu.com/img/bd_logo1.png"> 2 <img src="https://www.baidu.com/img/bd_logo1.png">
xss
1 <img src="D:\Typora\x" onerror="alert(1)"> 2 <img src="D:\Typora\x" onerror="alert(1)">
4.URL编码
URL编码是一种多功能技术,可以通过它来战胜多种类型的输入过滤器
URL编码的最基本表示方式是使用字符的十六进制ASCII编码来替换它们,并在ASCII编码前加%
例如,单引号字符的ASCII码为0x27,其URL编码的表示方式为%27
5.js编码
编码转换
进制 https://www.jb51.net/tools/zhuanhuan.htm
unicode http://www.msxindl.com/tools/unicode16.asp
<script>alert("Hello world!");</script>
JavaScript 十六进制编码
1 \x3C\x73\x63\x72\x69\x70\x74\x3E\x61\x6C\x65\x72\x74\x28\x22\x48\x65\x6C\x6C\x6F\x20\x77\x6F\x72\x6C\x64\x21\x22\x29\x3B\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E
JavaScript 八进制编码
1 \74\163\143\162\151\160\164\76\141\154\145\162\164\50\42\110\145\154\154\157\40\167\157\162\154\144\41\42\51\73\74\57\163\143\162\151\160\164\76
JavaScript unicode编码
1 \u003c\u0073\u0063\u0072\u0069\u0070\u0074\u003e\u0061\u006c\u0065\u0072\u0074\u0028\u0022\u0048\u0065\u006c\u006c\u006f\u0020\u0077\u006f\u0072\u006c\u0064\u0021\u0022\u0029\u003b\u003c\u002f\u0073\u0063\u0072\u0069\u0070\u0074\u003e\u0020
6.hex编码
这种编码常用于数据库中,转码过后要加上0x
例如,a的hex码是61,在数据库使用就是0x61
7.base64编码
base64 编码是一种常用的字符编码,在很多地方都会用到。但base64不是安全领域下的加密解密算法。能起到安全作用的效果很差,而且很容易破解,核心作用应该是传输数据的正确性,有些网关或系统只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法,而且base64非常适合在http,mime协议下快速传输数据。
8.json编码
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集。 JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C++, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式。
1 [ 2 { 3 "Name": "a1", 4 "Number": "123", 5 "Contno": "000", 6 "QQNo": "" 7 }, 8 9 { 10 "Name": "a1", 11 "Number": "123", 12 "Contno": "000", 13 "QQNo": "" 14 }, 15 16 { 17 "Name": "a1", 18 "Number": "123", 19 "Contno": "000", 20 "QQNo": "" 21 } 22 ] 23 24 <?php 25 26 $data='[{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""}]'; 27 $json=json_decode($data); 28 29 print_r($json); 30 31 ?>
9.序列化
序列化 (Serialization) 是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。
1 a:3:{i:0;s:3:"Moe";i:1;s:5:"Larry";i:2;s:5:"Curly";} 2 3 <?php 4 5 $stooges = array('Moe','Larry','Curly'); 6 7 $new = serialize($stooges); 8 9 print_r($new); 10 11 echo "<br />"; 12 13 print_r(unserialize($new)); 14 15 ?>
10.uft7编码
UTF-7 (7-位元 Unicode 转换格式(Unicode Transformation Format,简写成 UTF))是一种可变长度字符编码方式, 用以将 Unicode 字符以 ASCII 编码的字符串来呈现,可以应用在电子邮件传输之类的应用。
编码转换 https://web2hack.org/xssee/
文章来源:https://www.toymoban.com/news/detail-633421.html
HelloWorld +AEg-e+AGwAbABvAFcAbwByAGw-d文章来源地址https://www.toymoban.com/news/detail-633421.html
到了这里,关于3--常用编码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!