Node.js 开发项目

初始化

bash 复制代码
npm init

## 
npm install 

编辑packege.json 添加,以支持ES6的语法

javascript 复制代码
"type": "module"

连接mysql示例

javascript 复制代码
import db from './db/ops_mysql.js'

const createTable = async () => {
  const insert_data = `
    CREATE TABLE IF NOT EXISTS users (
      id INT AUTO_INCREMENT PRIMARY KEY,
      username VARCHAR(255) NOT NULL,
      password VARCHAR(255) NOT NULL
    );
  `;

  try {
    await db.query(createTableSQL);
    console.log('Table `users` created successfully.');
  } catch (error) {
    console.error('Error creating table:', error);
  } finally {
    await db.end();
  }
};

const insertData = async () => {
  const insert_data = `
    INSERT INTO users (username, password) VALUES ('knight', '112233');
  `;

  try {
    await db.query(insert_data);
    console.log('Data inserted successfully into `users` table.');
  } catch (error) {
    console.error('Error inserting data:', error);
  } finally {
    await db.end();
  }
};

// createTable();

// insertData();

http请求示例

javascript 复制代码
import fetch, { Response } from "node-fetch";
// 发送get请求


const fetchData =  async(userid)=>{
    const url = `https://jsonplaceholder.typicode.com/posts?userId=${userid}`;
    const res = await fetch(url);
    // const data = await res.json();
    /*
    在你的代码中,res.json() 返回的是一个 Promise 对象,而不是直接的数据。如果你在调用 res.json() 前不加 await,
    你实际上是在处理一个 Promise,而不是获取到 JSON 数据
    使用 await:当你在前面加上 await 时,代码会暂停执行,直到 Promise 完成并返回解析后的数据。
    
    */
    const data =  res.json();   
    console.log(data)     

};

fetchData(1)

读取json配置文件

javascript 复制代码
import fs from 'fs/promises';

async function loadConfig(){

    const data  = await fs.readFile('conf/config.json','utf-8');
    const config = JSON.parse(data);
    console.log(config);
    console.log(config.database['host']);

}

loadConfig();

web框架

javascript 复制代码
import express from 'express';


const app = express();

const port  = process.env.port || 3000;
console.log(port);


app.listen(port,()=>{
    console.log('....running ');
})

app.get('/user',(req,res)=>{
    res.send({'name':'rose','age':30})
})

// 静态资源路径
app.use(express.static('static'));
app.use(express.static('public'));
相关推荐
bingbingyihao10 小时前
Node.js 模拟 Linux 环境
linux·node.js
吳所畏惧13 小时前
NVM踩坑实录:配置了npm的阿里云cdn之后,下载nodejs老版本(如:12.18.4)时,报404异常,下载失败的问题解决
前端·windows·阿里云·npm·node.js·batch命令
JS_Love15 小时前
nodejs 手动实现 multipart/byteranges 分块下载
node.js
白一梓16 小时前
Node.js 流全解
node.js
门前云梦1 天前
ollama+open-webui本地部署自己的模型到d盘+两种open-webui部署方式(详细步骤+大量贴图)
前端·经验分享·笔记·语言模型·node.js·github·pip
Watermelo6171 天前
Web Worker:让前端飞起来的隐形引擎
前端·javascript·vue.js·数据挖掘·数据分析·node.js·es6
前端老鹰2 天前
Node.js 日志处理利器:pino 模块全面解析
后端·node.js
JiaLin_Denny2 天前
Node.js 版本兼容问题:minimatch@10.0.3和minio@7.0.28 冲突的解决
node.js·node安装包冲突
rogerogers2 天前
告别 Node 版本混乱!fnm 让你的开发环境丝滑起飞
javascript·node.js
NeverSettle_2 天前
AI SSE 技术文档
前端·node.js