从零开始用 JavaScript 写一个后端服务:我的实战入门指南

谢建华★
2026-04-20 14:37
阅读 369

大家好,我是阿哲,一名在一线大厂干了三年后端开发的工程师,同时也是 B站上一个技术频道的小 UP 主。经常有刚入门的朋友在评论区问我:“我想学后端,但连 JavaScript 都不太会,能行吗?”、“JavaScript 不是前端语言吗?也能做后端?”

今天这篇教程,就是专门写给完全零基础的你。我会手把手带你用 JavaScript 搭建一个真正的后端服务,不讲虚的,全是我在工作中踩过坑、总结出的经验。我当初学的时候,也以为 JavaScript 只能在浏览器里跑,直到接触了 Node.js,才真正打开新世界的大门。

别担心,哪怕你今天才听说“后端”这个词,只要跟着一步步来,两小时后,你就能拥有自己的第一个 API 接口!


什么是后端?JavaScript 怎么也能干这活?

简单说,后端就是网站或 App 背后“看不见”的那部分程序。比如你登录微信,点“发送消息”——这个动作背后,其实是你的手机(前端)向腾讯的服务器(后端)发了一个请求,服务器验证身份、保存消息、再通知对方。

传统上,后端常用 Java、Python、Go 等语言。但自从 Node.js 出现后,JavaScript 也能脱离浏览器,在服务器上运行了!这意味着:

  • 你可以用熟悉的 JavaScript 同时写前端和后端
  • 开发效率高,社区生态极其丰富
  • 特别适合做轻量级 API、实时应用(如聊天室)

💡 我当初第一次用 Node.js 写了个返回 “Hello World” 的接口,兴奋得截图发朋友圈——原来后端这么简单!


第一步:搭好开发环境(5分钟搞定)

我们不需要装复杂的东西,只需要两个工具:

工具 作用 安装方式
Node.js 让 JavaScript 能在电脑上运行 官网下载安装:https://nodejs.org
VS Code 代码编辑器(免费好用) 官网下载:https://code.visualstudio.com

安装步骤(以 Windows/macOS 为例):

  1. 打开 Node.js 官网,点击 LTS 版本(长期支持版,更稳定)下载并安装。

  2. 安装完成后,打开终端(Windows 用 PowerShell 或 CMD,macOS 用 Terminal),输入:

    node -v
    npm -v
    

    如果看到类似 v18.17.09.6.7 的版本号,说明安装成功!

  3. 安装 VS Code,打开它,后续所有代码都在这里写。

⚠️ 新手常见问题:
Q:我装了 Node.js,但终端提示“command not found”?
A:重启终端!有时 PATH 环境变量需要刷新才能生效。


核心概念:用大白话讲清楚后端三要素

要理解后端,只需搞懂三个东西:

1. 服务器(Server)

不是指一台机器,而是一个一直在运行的程序,等着别人来“找它”。就像 24 小时营业的便利店。

2. 请求(Request)与响应(Response)

  • 请求:客户端(比如浏览器)问服务器:“你能给我用户信息吗?”
  • 响应:服务器回答:“好的,这是你要的数据:{name: '小明'}”

3. API(应用程序接口)

就是服务器对外提供的“服务菜单”。比如:

  • /api/user → 获取用户信息
  • /api/login → 用户登录

🌰 举个生活例子:
你去麦当劳点餐(请求),服务员把汉堡给你(响应),菜单就是 API。


实战:手写你的第一个后端服务

我们现在用原生 Node.js 写一个最简服务器。虽然实际项目会用框架(如 Express),但先理解底层原理很重要!

步骤 1:创建项目文件夹

在电脑任意位置新建一个文件夹,比如叫 my-first-backend,然后在 VS Code 中打开它。

步骤 2:初始化项目

在 VS Code 内置终端(快捷键 Ctrl+`)中运行:

npm init -y

这会生成一个 package.json 文件,用来管理项目依赖。

步骤 3:写服务器代码

新建文件 server.js,粘贴以下代码:

// 引入 Node.js 自带的 http 模块
const http = require('http');

// 创建一个服务器
const server = http.createServer((req, res) => {
  // 设置响应头:告诉浏览器返回的是 JSON 格式
  res.setHeader('Content-Type', 'application/json');

  // 简单路由判断
  if (req.url === '/api/hello' && req.method === 'GET') {
    // 返回 JSON 数据
    res.end(JSON.stringify({ message: '你好,这是你的第一个后端接口!' }));
  } else {
    // 其他路径返回 404
    res.statusCode = 404;
    res.end(JSON.stringify({ error: '页面未找到' }));
  }
});

// 监听 3000 端口
server.listen(3000, () => {
  console.log('🚀 服务器已启动,访问 http://localhost:3000/api/hello');
});

步骤 4:运行服务器

在终端输入:

node server.js

看到 🚀 服务器已启动... 字样,说明成功了!

步骤 5:测试接口

打开浏览器,访问:
http://localhost:3000/api/hello

你会看到:

{"message":"你好,这是你的第一个后端接口!"}

恭喜!你刚刚亲手搭建了一个后端服务!

💡 我当初第一次看到浏览器返回自己写的 JSON,激动得差点把咖啡打翻——原来这就是后端的力量!


升级:用 Express 框架简化开发

原生 Node.js 虽然能跑,但写复杂逻辑会很麻烦。Express 是最流行的 Node.js 后端框架,能大幅减少重复代码。

改造步骤:

  1. 安装 Express:

    npm install express
    
  2. 新建文件 app.js,写入:

const express = require('express');
const app = express();

// 自动解析 JSON 请求体(重要!)
app.use(express.json());

// 定义 GET 接口
app.get('/api/hello', (req, res) => {
  res.json({ message: '用 Express 写的接口,更清爽!' });
});

// 定义 POST 接口(模拟创建用户)
app.post('/api/users', (req, res) => {
  const { name, email } = req.body; // 从请求体取数据
  if (!name || !email) {
    return res.status(400).json({ error: '缺少必要字段' });
  }
  // 模拟保存到数据库(这里只是打印)
  console.log('收到新用户:', { name, email });
  res.json({ success: true, user: { id: 1, name, email } });
});

// 启动服务器
app.listen(3000, () => {
  console.log('✅ Express 服务器运行中,端口 3000');
});
  1. 运行新服务器:

    node app.js
    
  2. 测试 POST 接口(需要用工具,比如 Postmancurl):

curl -X POST http://localhost:3000/api/users \
  -H "Content-Type: application/json" \
  -d '{"name":"张三","email":"zhangsan@example.com"}'

你会看到返回:

{"success":true,"user":{"id":1,"name":"张三","email":"zhangsan@example.com"}}

✅ 使用 Express 的好处:

  • 自动处理路由匹配
  • 内置中间件(如 express.json() 解析请求体)
  • 错误处理更优雅

新手必看:5 个高频问题解答

Q1:JavaScript 后端性能差吗?

A:对于大多数中小型项目(如企业内部系统、个人博客、小程序后端),Node.js 性能够用且开发快。超高并发场景(如秒杀)可能选 Go/Java,但那是进阶话题了。

Q2:怎么连接数据库?

A:常用方案:

  • MySQL:用 mysql2sequelize(ORM)
  • MongoDB:用 mongoose 初学建议先用内存数组模拟数据,后面再学数据库。

Q3:代码改了要重启服务器吗?

A:是的!但可以用 nodemon 工具自动重启:

npm install -g nodemon
nodemon app.js  # 修改代码后自动重启

Q4:如何部署到网上?

A:新手推荐免费平台:

  • Vercel(支持 Serverless 函数)
  • Render(可部署完整 Node.js 应用)
  • Railway(类似 Heroku)

Q5:前端怎么调用这个后端?

A:在 HTML 中用 fetch

fetch('http://localhost:3000/api/hello')
  .then(res => res.json())
  .then(data => console.log(data));

注意跨域问题!开发时可用代理,生产环境配 CORS。


下一步学习路线建议

你已经跨出了最难的第一步!接下来可以按这个顺序深入:

阶段 学习内容 推荐资源
基础巩固 Express 中间件、RESTful API 设计 Express 官方文档
数据持久化 连接 SQLite / MongoDB 《Node.js 实战》第3章
身份认证 JWT、Cookie/Session Auth0 免费教程
项目实战 做一个 Todo List API GitHub 上找开源示例
部署上线 Docker + Nginx 部署 B站搜索“Node.js 部署”

📌 避坑指南:

  • 不要一开始就学微服务、K8s,先搞定单体应用
  • 别死磕理论,边做边学效率最高
  • 遇到报错先看控制台,90% 的问题日志里都有线索

最后的话

这篇文章是我当年自学时最想看到的教程——没有术语轰炸,只有可运行的代码和真实经验。记得我第一次把接口部署到公网,让朋友在手机上访问成功的那一刻,真的觉得“编程改变世界”不是一句空话。

后端开发没那么神秘,它就是一套规则清晰的“对话系统”。而 JavaScript,给了我们一个低门槛的入场券。

如果你跟着教程跑通了代码,欢迎在评论区留言你的第一个 API 返回了什么!也欢迎关注我的 B站账号【阿哲的代码实验室】,我会持续更新更多“手把手”实战系列。

记住:每一个大神,都是从 console.log('Hello World') 开始的。

加油,未来的后端工程师!

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝