008Node.js模块、自定义模块和CommonJs

CommonJS API定义很多普通应用程序(主要指非浏览器的应用)使用的API,从而填补了这个空白。它的终极目标是提供一个类似Python,Ruby和Java标 准库。这样的话,开发者可以使用CommonJS API编写应用程序,然后这些应用可以运行在不同的JavaScript解释器和不同的主机环境中。在兼容CommonJS的系统中,你可以使用 JavaScript程序开发:

服务器端JavaScript应用程序

命令行工具

图形界面应用程序

混合应用程序(如,Titanium或Adobe AIR)。

Node中,模块分为两类:

核心模块 :Node提供的模块(HTTP模块、URL模块、FS模块
文件模块 :用户编写的模块(通过exports 或者module.exports暴露属性或者方法)

javascript 复制代码
//引入http模块
const http=require('http');

//http.createServer((req,res)=>{
    //http://www.shxiaobin.com/api/plist

    function formatApi(api){
        return "http://www.shixiaobin.com"+api
    }

http.createServer(function (req,res) {

    //req 获取客户端传过来的信息
    //res 给浏览器响应信息
    console.log(req.url);//获取url
    //设置响应头
    //状态码是200,文件类型是html,字符集是utf-8
    res.writeHead(200,{"Content-type":"text/html;charset='utf-8'"});  //解决乱码
    res.write("<head><meta charset='UTF-8'></head>");  //如果没有这一行,下面的 "你好" 是乱码 //解决乱码
   
    res.write('this is nodejs');
    res.write('你好 nodejs');

    var api=formatApi('api/plist');
    res.write(api);

    res.end();//结束响应,如果没有这一行,浏览器左上角的图标一直在转圈
}).listen(3000);  //端口建议3000以上,防止冲突
相关推荐
定栓3 小时前
Webpack迁到Vite第七节(二):全家桶移除 — Babel 全家桶深度分析
前端·webpack·node.js
wx47664 小时前
用代码做视频:我把一个 HTML 页面变成了可复现的 MP4
node.js
doujiaozh6 小时前
协议演进实录:从明文哈希到 AES-GCM 加密,如何平滑升级?
后端·node.js
定栓7 小时前
Webpack迁到Vite第七节(一):全家桶移除 — 配置文件与构建核心
前端·webpack·node.js
定栓11 小时前
Webpack迁到Vite第七节(四):全家桶移除 — 保留项、脚本与数据收尾
前端·webpack·node.js
定栓1 天前
Webpack迁到Vite第五节:第三方库兼容
前端·webpack·node.js
G018_star sky♬1 天前
如何用nodejs写一个简单后端服务
node.js
kiracrimson1 天前
npm 入门:包管理器、依赖与 npx
前端·npm·node.js
花花鱼2 天前
使用 nvm 管理多 Node.js 版本 + pnpm 完整实操,解决 pnpm Node 版本报错
node.js