发布于2026-07-08 阅读(0)
扫一扫,手机访问
在 Ubuntu 上跑 Ja vaScript,很多人第一反应是“这玩意儿不是写网页的吗”?其实 Node.js 早就把 Ja vaScript 带到了服务器端,处理网络请求自然不在话下。Node.js 内置了 http 模块,当然你也可以用第三方库,比如 axios 或者 node-fetch(至于那个老掉牙的 request 库,官方已经弃用了,就让它留在历史里吧)。

接下来看看具体怎么操作,三种常见方式任君选择。
http 模块如果你不想装任何第三方依赖,直接用 Node 自带的 http 就行。它虽然写起来稍微啰嗦一点,但胜在零依赖、稳定可靠。下面是一个 GET 请求的示例:
const http = require('http');
const options = {
hostname: 'api.example.com',
port: 80,
path: '/data',
method: 'GET'
};
const req = http.request(options, (res) => {
console.log(`状态码: ${res.statusCode}`);
res.on('data', (chunk) => {
console.log(`响应主体: ${chunk}`);
});
});
req.on('error', (e) => {
console.error(`请求遇到问题: ${e.message}`);
});
req.end();
注意,这种写法需要手动处理响应流,适合对底层控制要求比较高的场景。大部分情况下,你用第三方库会更省事。
axios 库(推荐)axios 是当下最流行的 HTTP 客户端之一,API 简洁,支持 Promise,还自动处理 JSON 数据。先安装:
npm install axios
然后发请求就跟玩一样:
const axios = require('axios');
axios.get('http://api.example.com/data')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(`请求遇到问题: ${error.message}`);
});
当然也可以用 async/await 写得更优雅,不过示例里用 .then 更直白。如果你需要 POST、PUT 或者设置请求头,axios 同样轻松搞定。
node-fetch 库(浏览器友好)如果你习惯浏览器的 fetch API,那 node-fetch 会让你感到亲切。安装命令:
npm install node-fetch
使用方式几乎和浏览器端一模一样:
const fetch = require('node-fetch');
fetch('http://api.example.com/data')
.then(response => response.json())
.then(data => {
console.log(data);
})
.catch(error => {
console.error(`请求遇到问题: ${error.message}`);
});
不过要注意,node-fetch 默认不会自动解析 JSON,需要手动调用 response.json()。这一点和 axios 不太一样,习惯就好。
三种方法各有千秋:追求简洁选 axios,追求原生体验选 http 模块,浏览器迁移者选 node-fetch。在 Ubuntu 环境下,只要 Node.js 装好了,这些都能跑得飞起。根据你的项目需求挑一个最顺手的就好。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8