Javascript 将Meteor与节点芹菜一起使用会导致错误”;无法读取属性';切片';“无效”的定义;

Javascript 将Meteor与节点芹菜一起使用会导致错误”;无法读取属性';切片';“无效”的定义;,javascript,node.js,meteor,celery,Javascript,Node.js,Meteor,Celery,运行localhost:3000以触发问题 我正在Meteor 1.4.4.1的服务器端使用节点芹菜npm包。Meteor启动时,客户端会自动调用Meteor方法estimates.request,该方法会触发服务器将任务排入队列: client/main.js Meteor.startup(() => { Meteor.call('estimates.request', function(err) { console.log('ok') }) }); M

运行localhost:3000以触发问题

我正在Meteor 1.4.4.1的服务器端使用
节点芹菜
npm包。Meteor启动时,客户端会自动调用Meteor方法
estimates.request
,该方法会触发服务器将任务排入队列:

client/main.js

Meteor.startup(() => {
    Meteor.call('estimates.request', function(err) {
        console.log('ok')
    })
});
Meteor.methods({
    'estimates.request'() {
        console.log('estimates.request called');

        // Create Celery client
        var celery = require('node-celery')
        var client = celery.createClient({
            CELERY_BROKER_URL: 'amqp://192.168.1.26:5672//',
            CELERY_RESULT_BACKEND: 'amqp'
        });

        // Queue task on connect
        client.on('connect', function() {
            console.log('connected');
            start_latitude = 1.3053947
            start_longitude = 103.8273045
            client.call('proj.tasks.getPriceEstimates', [start_latitude, start_longitude],
                function(result) {
                    console.log('result: ', result);
                    client.end();
                })
        });
    }
});
这触发了Meteor方法:

导入/api/Estimates.js

Meteor.startup(() => {
    Meteor.call('estimates.request', function(err) {
        console.log('ok')
    })
});
Meteor.methods({
    'estimates.request'() {
        console.log('estimates.request called');

        // Create Celery client
        var celery = require('node-celery')
        var client = celery.createClient({
            CELERY_BROKER_URL: 'amqp://192.168.1.26:5672//',
            CELERY_RESULT_BACKEND: 'amqp'
        });

        // Queue task on connect
        client.on('connect', function() {
            console.log('connected');
            start_latitude = 1.3053947
            start_longitude = 103.8273045
            client.call('proj.tasks.getPriceEstimates', [start_latitude, start_longitude],
                function(result) {
                    console.log('result: ', result);
                    client.end();
                })
        });
    }
});
出现以下错误:

Exception while invoking method 'estimates.request' TypeError: Cannot read property 'slice' of null
问题:导致此错误的原因是什么


运行localhost:3000以触发该问题。

我也遇到了同样的问题,并且节点芹菜文档中有一个错误。芹菜\u结果\u后端选项的输入错误

您应该如下设置此选项:

芹菜\u结果\u后端:'amqp://'
它应该可以工作

芹菜读取url并对协议进行切片,因此如果通过
amqp
芹菜将抛出异常