我目前正在使用在NodeJS上用TypeScript编写的智能合约/链码在Hyperledger Convector之上构建应用程序。该应用程序还包括一个基于Express的API服务器和一个基于AngularJS的前端服务器。
我建立了一个智能合约来存储和验证用户,该合约已经过全面的单元测试,因此在进行测试时效果很好。但是,当我尝试打包链码以将其安装到我的结构网络中时,出现以下错误:
https://i.imgur.com/mEi5f4G.png
我试图摆脱所有节点模块,清除缓存并从最新提交中进行构建,但没有成功。
该项目建立在https://github.com/worldsibu/convector-example-fabcar-rest
之上这是我构建的链码的方法签名:
import * as yup from 'yup';
import {
Controller,
ConvectorController,
Invokable,
Param
} from '@worldsibu/convector-core';
import * as uuid from 'uuid/v4';
import * as bcrypt from "bcryptjs";
import * as jwt from "jsonwebtoken";
import { User } from './user.model';
const JWT_SECRET = "SOME TOKEN";
@Controller('user')
export class UserController extends ConvectorController<any> {
@Invokable()
public async init() {
..
}
@Invokable()
public async create(@Param(User) user: User) {
..
}
@Invokable()
public async authenticate(@Param(yup.string()) username: string, @Param(yup.string()) password: string): Promise<any> {
..
}
@Invokable()
public async queryOne(@Param(yup.string()) id: string): Promise<User> {
..
}
@Invokable()
public async getAll(): Promise<User[]> {
..
}
}
错误跟踪中的第21行指的是:
export const UserControllerBackEnd =
ClientFactory(UserController, adapter);
export const CompanyControllerBackEnd =
ClientFactory(CompanyController, adapter);