您的位置:首页 > Web前端 > Node.js

【自】十天学会NodeJs的实战运用,express框架的应用(二)

2017-02-10 14:11 513 查看

十天学会NodeJs第二篇

所有代码均在git上面可以下载查看:https://github.com/shiyou00/NodeJs

上一章节主要讲了http模块和fs模块,实际上概念没有像书本一样深入讲解,而注重的是通过实际案例来理解概念。如果想要学习全面的node API 可以考虑翻看官方API或者看看书

今天主要讲的内容:

fs模块详解

querystring模块

url模块

node如何接get请求

node如何接post请求

服务端种cookie

设置响应头

querystring模块解析

其实简单的理解这个模块就是解析数据的一个模块,具体我们来看一个简单的小例子

const querystring = require('querystring');

var str = 'a=1&b=2&c=3';

console.log(querystring.parse(str));

//运行结果是:{ a: '1', b: '2', c: '3' }


这是querystring的parse方法,那就必然会有stringify方法咯

const querystring = require('querystring');

var json={a:1,b:2,c:3};

console.log(querystring.stringify(json));

//输出a=1&b=2&c=3


也可以通过设置参数来解析特定的数据

例如:

const querystring=require('querystring');

var str = 'a=1; b=2; c=3';

console.log(querystring.parse(str,'; '));

//输出:{ a: '1', b: '2', c: '3' }


url模块

解析给定的URL地址

const url=require('url');

var str='http://localhost:8081/abc?username=abc&password=123';

console.log(url.parse(str,true));


输出:

Url {
protocol: 'http:',
slashes: true,
auth: null,
host: 'localhost:8081',
port: '8081',
hostname: 'localhost',
hash: null,
search: '?username=abc&password=123',
query: { username: 'abc', password: '123' },
pathname: '/abc',
path: '/abc?username=abc&password=123',
href: 'http://localhost:8081/abc?username=abc&password=123' }

这样就可以获取自己想要的任何信息了


node如何接GET请求

1.首先我们创建一个form.html页面,使用form表单的方式提交GET请求

<form action="http://localhost:8081/abc">
user:
<input type="text" name="username">
<br>
password:
<input type="password" name="password">
<br>
<input type="submit">
</form>


然后我们编写一个简单的服务器来接受数据

const http = require('http');
const urlLib = require('url');

http.createServer(function(req,res){
req.getDate = urlLib.parse(req.url,true).query;
console.log(req.getDate);
}).listen(8081);


看下控制台:


很明显,后台已经接受到了数据,然后通过urlLib这个模块的parse方法进行了把数据解析成,我们需要的JSON形式了;

按照正常的逻辑,这时候我们应该连接数据库,存一份数据到数据库,然后给前台反馈一份数据譬如:"登录成功"这样的形式;

不过这些以后我们都会讲到。

----本章节未完
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: