Javascript 使用环回作为API代理并进行响应重构
我必须从非RESTful API访问数据,并试图构建一个新的web服务来访问原始API并将其作为RESTful API重新公开 我想用它来实现这一点 到目前为止,我已经:Javascript 使用环回作为API代理并进行响应重构,javascript,rest,loopbackjs,Javascript,Rest,Loopbackjs,我必须从非RESTful API访问数据,并试图构建一个新的web服务来访问原始API并将其作为RESTful API重新公开 我想用它来实现这一点 到目前为止,我已经: var loopback = require("loopback"); var ds = loopback.createDataSource({ connector: require("loopback-connector-rest"), debug: false, operations: [ {
var loopback = require("loopback");
var ds = loopback.createDataSource({
connector: require("loopback-connector-rest"),
debug: false,
operations: [
{
"template": {
"method": "POST",
"url": "http://192.168.1.20/OLD_API/Web_SVC.ASMX/CALLFUNC",
"headers": {
"accepts": "application/json",
"content-type": "application/json"
},
"body": "{body}"
},
"functions": {
"create": ["body"]
}
}
]});
var model = ds.createModel('debtor');
model.create({ "DLLNAME":"WEB_DLLS.GET_AGED", "FUNCTIONNAME":"M_GET_AGED", "PARAMETERNAME":"1234" },function (err, result, response) {
console.log(JSON.parse(result.d));
});
理想情况下,我想在/api/deborts/{clientId}
中将此POST
公开为GET
,其中clientId
是模型中的参数名
您可以进一步参数化操作映射的主体,如下所示:
正文:{
“DLLNAME”:“WEB\u DLLS.GET\u age”,
“函数名”:“M_GET_age”,
PARAMETERNAME:“{PARAMETERNAME}”
}
您可以更改createremoting元数据,也可以将create包装到另一个方法中并公开它
model.createOverGet=函数(参数,cb){
创建(…,cb);
}
请参阅。model.createOverGet
是否指更改“创建远程处理元数据”?我可以在datasources.json
文件中执行此操作吗?如果不是,如何正确地公开模型而不是REST?另外,是否有一种方法可以在再次公开原始API之前解析来自原始API的响应?