这不是一个特定的问题,但我试图围绕REST API的概念并在您自己的API中调用API。
例如,如果我开发一个名为“BeesBees”的应用程序,用户可以购买蜜蜂,我有一个登录和密码数据库,显然是蜜蜂,每个成本,我明白我可以使用自己的应用程序BeesBees API得到蜜蜂的清单(如果我让它为其他人开放,他们也可以使用我的GET /蜜蜂点来得到,好吧,蜜蜂)
但是,如果我想让客户购买蜜蜂,我不想构建一个完整的平台,那么我整合Stripe - 我可以有一个POST /:users / charge /:priceOfBee API调用,在转向,某种程度上称为Stripe API函数?例如,指向将使用Stripe的Node.js SDK进行收费的Node.js项目的URL。
或者,在这种情况下,为我的设备平台实施Stripe SDK并使用该设备进行收费会更好吗?
我没有代码库,所以没有什么可以分开的,但我想不出别的问题,对不起你们
你当然可以用其他API包装API,它实际上只是一种组合形式,委托给其他有意义的服务。
条带集成可能是一个很好的例子,说明遵循这种模式可能有意义。你当然不想推出自己的支付服务。
以下是发出API请求的本地Express服务器的一个简单示例:
const express = require("express");
const port = 3000;
const app = express();
const request = require('request');
app.get("/api/example", (req, res) => {
// Make external REST request here...
let options = {
url: 'https://httpbin.org/get',
qs: { parameter1: 42 },
json: true
}
request(options, (err, response, body) => {
if (err) {
res.status(500).send(err.message);
} else {
res.status(200).send(body);
}
});
});
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('running at http://' + host + ':' + port)
});
console.log(`Serving at http://localhost:${port}`);