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'));
相关推荐
flash俊杰7 小时前
Electron 打包后窗口 30 秒不出现:一个 ABI 不匹配的血案
electron·node.js
@tangguo1239 小时前
npm 和 yarn 配置说明
前端·javascript·npm·node.js·yarn
flash俊杰11 小时前
一套代码接入所有大模型:OpenAI 兼容适配器设计
node.js·openai
右耳朵猫AI11 小时前
Node.js周刊2026W38 | 进程中断缺陷修复、Copilot 迁至 Rust、Node 新增 VFS
javascript·后端·node.js
光影少年1 天前
Express 中间件原理
后端·node.js·express
时速GEO系统1 天前
初元 AI V1.1 版本升级,首个正式版发布一周・实现生成、部署、上线、优化全流程自动化闭环
人工智能·数据挖掘·node.js
console.log('npc')1 天前
06 — Model 层:数据模型与操作
前端·后端·node.js·express
右耳朵猫AI1 天前
Web前端周刊2026W38 | React 19.3 发布、StyleX 深潜、jsdom 30.1 提速
前端·javascript·react.js·typescript·node.js
光影少年1 天前
Koa 为什么使用洋葱模型
后端·node.js·koa