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以上,防止冲突
相关推荐
用户6724653660517 小时前
Node 守护进程日志转发踩坑记:stdio 管道、UTF-8 截断,和一个字符串按值传参的故事
node.js
coderCN18 小时前
Nodejs express+knex(ORM框架)
前端·node.js
coderCN18 小时前
Nodejs mysql2+express+yaml
node.js
烬羽18 小时前
我把"时间胶囊"部署上腾讯云宝塔,跨域从根源消失了
nginx·node.js·全栈
东风破_1 天前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
东风破_1 天前
danci 项目(三):从 JSON 数据到 AI Coding,真实项目里的数据清洗、Prompt 和工程规范
前端·后端·node.js
东风破_1 天前
danci 项目(一):从需求到架构,一个单词学习系统为什么会这样设计
前端·后端·node.js
__zRainy__1 天前
Node系列 · Express:常用的中间件
中间件·node.js·express
时寒的笔记1 天前
jsvmp04_某yuan宝日志还原rc4
node.js
coderCN2 天前
Nodejs 第三十四章 数据库(表达式和函数、子查询和连表)
前端·node.js