2017-04-12 133 views
1

私はエクスプレスを使用していて、誰かが私のルートに投稿するといつでも仕事を作りたいと思っています。私はその回答にjob.idを含めることを希望します。しかし、ジョブidは、私のqueue.createFunctionのコールバックにのみ挿入されるので、私はどのようにジョブIDを返すのかよく分かりませんか?私が考えることができる解決策の1つは、私のルートでPOSTリクエストを発行してジョブを作成することです.APIが応答としてIDを返すので、これは非効率的です。KueでjobIDを返す方法は?

答えて

0

ない100%これは、あなたの質問に答えるが、前に私は、POSTリクエストでジョブを作成するために以下で使用した場合:

const queue = kue.createQueue({ 
    redis: { 
    port: conf.redis_port, 
    host: conf.redis_host, 
    }, 
}) 

app.post('endpoint', function(req, res, next) { 
    let job = queue.create('some_action', req.data) 

    // ... add job listeners etc. 

    job.save(function(err) { 
     if (err) { 
      return res.send({ error: err }) 
     } else { 
      return res.send({ id: job.id }) 
     } 
    }) 

}) 

はそれが役に立てば幸い! :)

関連する問題