node.js - 如何在浏览器中显示 API?如何将该请求承诺代码迁移到节点获取代码中?
问题描述
我正在从 Coinmarketcap API 请求数据,我知道如何在终端上显示它,但我不知道如何在浏览器上显示它,我该怎么做?
这是我的代码:
const rp = require('request-promise');
const requestOptions = {
method: 'GET',
uri: 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest',
qs: {
'start': '1',
'limit': '1',
'convert': 'USD'
},
headers: {
'X-CMC_PRO_API_KEY': 'b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c' // it isn't my real api key
},
json: true,
gzip: true
};
rp(requestOptions).then(response => {
console.log('API call response:', response.data[0].quote.USD.price);
}).catch((err) => {
console.log('API call error:', err.message);
});
我不知道如何将该请求承诺代码迁移到节点获取代码中,我该怎么做?
解决方案
假设您使用的是 Express JS,请尝试以下代码:
要安装 node-fetch 使用以下命令:
npm install --save node-fetch
然后使用以下代码:
const express = require('express');
const app = express();
const fetch = require('node-fetch');
app.get('/', function(req, res, next)
{
var url ='https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest';
var headers =
{
"Content-Type": "application/json",
"X-CMC_PRO_API_KEY": "b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c"
}
var data =
{
'start': '1',
'limit': '1',
'convert': 'USD'
}
fetch(url, { method: 'GET', headers: headers, body: data})
.then((result) =>
{
return result.json();
})
.then((json) =>
{
res.send(json);
});
}
推荐阅读
- amazon-web-services - Cloudbreak 的优势和局限性
- excel - VBA 更新链接的 Excel 工作簿的文件路径
- discord.js - 拆分参数
- python-3.x - 使用 Ctypes 与 Fortran DLL 交互时访问冲突
- java - 使用 group-by java 8 lambda 流计算平均值
- android - Xamarin Android 上的方向更改保留内容
- android - 9 补丁图像不拉伸
- c# - 在 EF Core 中使用 IList、List、ICollection 处理 1 到 n 关系
- c# - 根据类型用默认值填充 T[]
- ansible - 我可以在剧本中导入或包含 pre_tasks 或 post_tasks 吗?