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'));
相关推荐
我叫汪枫6 小时前
在后台管理系统中,如何递归和选择保留的思路来过滤菜单
开发语言·javascript·node.js·ecmascript
技术钱6 小时前
nodejs使用RustFS容器服务搭建对象存储oss
node.js·egg
大貔貅喝啤酒11 小时前
接口测试_Postman(详细版)
javascript·测试工具·node.js·自动化·postman
桜吹雪11 小时前
Langchain.js官方文档:构建具备按需加载技能的 SQL 助手
javascript·人工智能·node.js
拾贰_C17 小时前
【node.js | Ubuntu | update】如何升级旧的nodejs本版至最新;如何升级npm
ubuntu·npm·node.js
湖边看客19 小时前
在 Windows PowerShell 里给 Node.js 设置内存上限
node.js
zhensherlock19 小时前
Protocol Launcher 系列:Beorg 高效任务管理的协议支持
前端·javascript·typescript·node.js·自动化·github·js
shao9185161 天前
第3章(2)——使用Gradio JavaScript Client
javascript·node.js·cdn·gradio·job·events·playcode
Rabbit_QL2 天前
npm 不是“前端的包管理器“—它是 Node.js 的
前端·npm·node.js
是大强2 天前
nvm安装node成功npm失败
前端·npm·node.js