node-zookeeper-dubbo 和egg實現遠程鏈接

  • 基於js的node-zookeeper-dubbo 和egg實現遠程鏈接服務
const nzd = require('node-zookeeper-dubbo'); const opt={ application:{name:'dubbo-consumer'},//前端充當dubbo服務的消費者
    registry:'****:2181', dubboVer:'****', dependencies:{ //此處的接口也能夠分離出去 直接引入service接口
 Foo:{ interface:'cn.wangsr.api.demoService',//後端接口
            version:'1.0.0', timeout:5000, methodSignature: {//後端方法區
                getUserInfo : (Id) => [ {'$class': 'java.lang.Long', '$': id} ],//參數類型按照java後臺參數類型全類名
 } } } } opt.java = require('js-to-java') const Dubbo=new nzd(opt); const Service = require('egg').Service; class TestDubboService extends Service{ async getUserInfo(Id){//此處暴露接口 用於controller層調用
        return Dubbo.Foo.getUserInfo(10020)//爲了測試直接在此處帶參
 } } module.exports = TestDubboService;

 

  • controller中調用:
async main() { const { ctx } = this; const result = await this.ctx.service.index.getUserInfo();//此處省略參數 由於在前面已經提早輸入
        this.ctx.body =result ; }
相關文章
相關標籤/搜索