javascript服务端编程
??服务端编程也就是后端编程,用来接收客户端请求、处理业务逻辑、响应数据。能够进行后端编程的语言有java、PHP、python等,javascript也能进行后端编程,提供给javascript进行后端编程的平台是nodejs。
??nodejs是一个应用编程平台,能运行javascript语言编写的代码,提供了javascript的运行环境。nodejs是一个基于Google的V8引擎,V8引擎执行javascript的速度非常之快,性能很好。它提供了大量的应用编程接口API,在执行http网络、数据库、文件等操作时十分方便。
用javascript语言创建一个web服务器的步骤:
- 引入nodejs内置模块http
const http = require('http') - 创建后端web服务器【第一个参数request是请求对象–客户端的请求信息;第二个参数response是相应对象】
let server = http.createServer(function(request,response){
response.writeHead(200,{"Content-Type":"text/html;charset=utf-8"})
let path = request.url
if(path.indexOf('/login') !== -1){
let str = `
<form>
用户名:<input type="text",name="username"><br>
密 码:<input type="password",name="password"><br>
<input type="submit">
</form>
`
response.write(str)
}else{
response.write("未开发")
}
response.end()
}
})
- 启动web服务器【第一个参数是端口号,第二个参数是回调函数,当服务器启动成功就执行里面的代码】
server.listen(3000,function(){
console.log("3000")
})
http协议
- 概念:http是超文本传输协议,基于响应模式的无状态、无连接的应用层协议。
- 特点:
(1)请求响应模式 (2)传输数据速度快 (3)传输数据类型多样 (4)无连接【每次请求响应完成断开连接】 (5)无状态【请求响应的数据http协议不会记录,需要自己记录处理】 - http工作流程
(1)与服务端建立连接 ?? 三次握手:服务端与客户端建立稳定可靠的连接。 (2)发送请求 ??客户端向服务端发送数据,这个数据称为请求包。请求包的本质是一串有格式的文本信息,格式如下: ?? ??请求行 【请求方法 URL地址 协议版本】 ?? ??请求头部 ?? ??请求包体(正文)【传给服务器的数据】 (3)服务端接收请求响应数据 ??服务端向客户端响应的数据称为响应包,是一串有格式的文本信息,格式如下: ?? ??响应行(页脚状态行)【 协议版本 状态码 状态码描述】 ?? ??响应头部 ?? ??响应包体 (4)断开连接 ??四次握手
|