任何人都有塞内卡的经历吗?
当我尝试包括网格时我有问题...
这是hapi路线:
server.route({
method: 'GET',
path: '/api/ping',
handler: function (req, reply) {
server.seneca// load the mesh plugin
.use('mesh')
// send a message out into the network
// the network will know where to send format:hex messages
.act('foo:1,v:2', (err: any, out: any) => {
console.log(err)
// prints #FF0000
reply(null, out)
})
}
})
这是我的服务:
require('seneca')({
})
//.use('zipkin-tracer', {sampling:1})
.use('entity')
.use('ping-logic')
.ready(function(){
console.log(this.id)
})
逻辑:
module.exports = function post(options) {
var seneca = this
seneca// provide an action for the format:hex pattern
.add( 'foo:1', function (msg, done) {
done( null, {x:1,v:100+msg.v} )
})
.use('mesh', { auto:true, pin:'foo:1' })
}
我收到错误
CL MISSING {foo:1,v:2}
任何人都知道什么是porblem?
答案 0 :(得分:2)
我也遇到了这个问题。我必须做两件事:
在您的hapi路线中添加seneca.ready(function()),如下所示:
server.route({
method: 'GET',
path: '/api/ping',
handler: function (req, reply) {
server.seneca// load the mesh plugin
.use('mesh')
.ready(function () {
// send a message out into the network
// the network will know where to send format:hex messages
this.act('foo:1,v:2', (err: any, out: any) => {
console.log(err)
// prints #FF0000
reply(null, out)
})
})
}
})
同时检查这个相关的github问题,其中我询问了主要贡献者是否有计划在NPM上尽快获得新的修复版本: https://github.com/senecajs/seneca-mesh/issues/90
希望这有帮助