使用node.js开发博客

ECMAScript是语法规范

nodejs = ECMAScript + nodejsAPI,可完成服务端的任何操作

js = ECMAScript + WebAPI

common.js是nodejs的模块化规范

使用方法

a.js中写入

function add(a, b) {
  return a + b;
}

module.exports = add;

b.js中写入 

var add = require("./a");
var sum = add(10, 20);
console.log(sum);

在终端执行 node b.js 输出30

导出多个模块

a.js中写入

function add(a, b) {
  return a + b;
}
function mul(a, b) {
  return a * b;
}

module.exports = { add, mul };

b.js中导出模块

var { add, mul } = require("./a");

上面代码相当于

var ops = require("./a");
var add = ops.add;
var mul = ops.mul;

注意导出模块的名字必须与导入的模块名字相同

导入其他插件

初始化npm环境

npm init -y

安装lodash

npm i lodash

导入方式相同

var _ = require("lodash");

开发接口(不用任何框架)

nodejs是如何处理http请求

http请求概述

1.客户端DNS解析,建立TCP连接,发送http请求

2.server端接收http请求,处理,并返回

3.客户端接收到返回的数据,处理数据(如渲染页面,执行js) 

注:

DNS解析:我们访问的网址如百度,是一个域名,这个域名通过DNS解析为对应的一个ip地址,客户端找到IP地址后会进行TCP连接

nodejs处理路由

var http = require("http");
var queryString = require("querystring");

var server = http.createServer((req, res) => {
  var url = req.url;
  var path = url.split("?")[0];
  req.query = queryString.parse(url.split("?")[1]);
});

nodejs处理get请求

var http = require("http");
var queryString = require("querystring");

var server = http.createServer((req, res) => {
  var method = req.method;
  console.log(method);
  var url = req.url;
  req.query = queryString.parse(url.split("?")[1]);
  res.end(JSON.stringify(req.query));
});

server.listen(8080, function() {
  console.log("listening on 8080");
});

nodejs处理post请求 

使用postman插件,百度搜postman chrome crx 下载 或直接下载postman app

var http = require("http");
var queryString = require("querystring");

var server = http.createServer((req, res) => {
  if (req.method === "POST") {
    console.log("content-type", req.headers["content-type"]);
  }
  var postData = "";
  res.on("data", function(chunk) {
    postData += chunk.toString();
  });
  res.on("end", function() {
    console.log(postData);
    res.end(JSON.stringify(postData));
  });
});

server.listen(8080, function() {
  console.log("listening on 8080");
});

nodejs处理返回响应的格式

// 设置返回的格式为json
res.setHeader('Content-type','application/json')

搭建开发环境

使用nodeMon监测文件变化,自动重启node

使用cross-env设置环境变量,兼容mac linux和windows

开发接口(暂不连接数据库,暂不考虑登录)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风里有诗句哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值