从最简单的一个node服务器开始说起
nodejs最常用的就是搭建服务器,今天就从0开始搭建自己的服务器,要想使用node来进行搭建服务器首先肯定是得下载node,直接百度一下node,从官网下载。下载完成后,直接安装软件就可以了。
这样就可以愉快的撸我们的服务器了。
我们创建一个文件叫server.js
<!--引入http模块-->var http = require('http')<!--创建http服务,服务中会有一个回调函数,request(请求)、response(返回值)-->var server = http.createServer(function(request,response){ // 返回给前端的数据 response.write('hello nodejs') response.end(null)})<!--监听http服务的端口号-->server.listen('80',function(){ console.log('服务在80端口启动')})复制代码
其实这样就可以创建一个简单的服务器了。可以打开cmd,进入到你的项目目录,输入node server.js这个时候大家可以看到服务在80端口启动字样了。
但是这样简单的服务器是不能满足我们的需求的
当前台通过form表单给我们传递数据的时候,我们的node服务器是怎么接受到参数的呢。
我创建一个简单的form.html作为前端代码,来实现一个简单的登陆效果。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title></head><body> <form action="http://localhost/login" method="GET"> 用户:<input type="text" name="user"><br> 密码:<input type="password" name="pass"><br> <input type="submit" value="登陆"> </form></body></html>复制代码
创建一个server.js
<!--引入http模块-->var http = require('http')var url = require('url') // 引入url模块,处理前端传递过来的参数<!--创建一个node服务(为了方便,这里把request、response简写成req、res当然这样是支持的)-->var server = http.createServer(function(req,res){ <!--前端传递的参数通过req给node服务器--> console.log(req) //req包含了前端给我们的很多的参数,可以打印出来看一下。 <!--但我们要的参数是通过get传递过来的url--> var urlobj = url.parse(req.url) var query = urlobj.query console.log(query) // 得到就是form传递过来的数据 })server.listen('80',function(){ console.log('服务在80端口启动')})复制代码
user=cbq123456&pass123456我们后端可以得到这样的数据复制代码
这样我们就可以轻松拿到前端给我们的数据了
如何把处理前端给我们的数据呢
我们想把这个字符变成json数据格式,刚好可以使用node为我们提供的querystring方法
var urlObj = url.parse(request.url, true) // 只需要在添加一个true,就可以var query = urlObj.query // 得到的结果就是{ user: 'abc', pass: '123456' }复制代码
以上就是关于node服务器的最基础的知识点,如果有什么写的不好的地方,欢迎各位大大吐槽。