logic.js中的函数在playground中运行,但在REST服务器中不运行

时间:2018-02-21 15:15:19

标签: hyperledger-fabric hyperledger hyperledger-composer

我的logic.js文件中有一个函数可以从api中检索一个平面的纬度和经度:

-nan

当我在操场上测试此功能时,它成功检索了飞机的经度和纬度。但是,当我尝试通过作曲家REST服务器执行相同的功能时,我收到以下错误:

  

尝试调用业务网络时出错。错误:没有来自任何对等方的有效响应。\ n来自尝试的对等通信的响应是错误:错误:链代码错误(状态:500,消息:ReferenceError:标识符'提取'未定义)

有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:2)

认为fetch()是一个Web浏览器(库)API,特别是如果在Playground中使用带有“假”结构的Web连接 - 而在Composer REST服务器/运行时中看不到它(当事务处理时)问题是调用函数被调用)。

Hyperledger Composer允许您进行标注 - 请点击此处https://hyperledger.github.io/composer/integrating/call-out

可以从那里调用OpenSky REST API(如果可能,结果将作为JS对象返回)

例如。 GET / states / all example

var url = "https://opensky-network.org/api/states/all?time=1458564121&icao24=3c6444";

return post( url, postTransaction)
  .then(function (resp) {
// same code as you had before
});

如果可能,响应(resp)的body属性会自动转换为JS对象,否则会以字符串形式返回。