Javascript 使用环回作为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: [ {

我必须从非RESTful API访问数据,并试图构建一个新的web服务来访问原始API并将其作为RESTful API重新公开

我想用它来实现这一点

到目前为止,我已经:

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的响应?