与fs文件模块一样,http模块也是nodejs核心模块中的一个
当学到这儿的时候我突然真正体会到了模块化编程究竟是什么样的过程
http模块之请求
1、引入http模块
2、实例化一个web服务器
3、注册request请求事件
4、绑定端口号,启动服务器
http模块之响应
这部分一气呵成
1 | var http =require('http') |
http模块之Content-Type
学到这的时候我突然回忆起了当时学php的时候也是需要在请求头中设置Content-Type来解决浏览器的识别编码的问题
看来无论是什么语言都有这一步的操作
1 | var http = require('http') |
为什么?
服务器发送的数据其实是utf-8编码的内容。
但浏览器不知道是什么编码方式,所以它只会按照操作系统默认的方式解码。
因此,服务器得告诉浏览器,我的内容是个文本(text),你按照plain的格式来解析,字符按照utf-8编码方式解析
Content-Type有哪些?
不同的资源对应的Content-Type是不一样的。
可以在常用对照表参考
图片不需要指定编码。
一般只为字符数据指定编码(没有字符的话;charset=utf-8可以不写)