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'));
相关推荐
coderCN19 分钟前
Nodejs express+knex(ORM框架)
前端·node.js
coderCN19 分钟前
Nodejs mysql2+express+yaml
node.js
烬羽34 分钟前
我把"时间胶囊"部署上腾讯云宝塔,跨域从根源消失了
nginx·node.js·全栈
东风破_10 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
东风破_10 小时前
danci 项目(三):从 JSON 数据到 AI Coding,真实项目里的数据清洗、Prompt 和工程规范
前端·后端·node.js
东风破_11 小时前
danci 项目(一):从需求到架构,一个单词学习系统为什么会这样设计
前端·后端·node.js
__zRainy__17 小时前
Node系列 · Express:常用的中间件
中间件·node.js·express
时寒的笔记18 小时前
jsvmp04_某yuan宝日志还原rc4
node.js
coderCN18 小时前
Nodejs 第三十四章 数据库(表达式和函数、子查询和连表)
前端·node.js
5233AI开发笔记1 天前
Node.js 调用 API:为什么秘密型 Key 不能放前端
node.js