1
我正在使用Seneca來路由API調用並表達爲我的文件提供服務。 問題是,我似乎無法找到一種方法來從API獲取我的數據後發送迴應客戶端的響應。 隨着快遞,我只會使用res.send
,但由於我在塞內加方面,我不能。在文檔中沒有發現對此問題的任何引用。如何使用Seneca和Express發送響應
"use strict";
const bodyParser = require('body-parser');
const express = require('express');
const jsonp = require('jsonp-express');
const Promise = require('bluebird');
const path = require('path');
const seneca = require('seneca')();
const app = express();
module.exports = (function server(options) {
seneca.add('role:api,cmd:getData', getData);
seneca.act('role:web',{use:{
prefix: '/api',
pin: {role:'api',cmd:'*'},
map:{
getData: {GET:true} // explicitly accepting GETs
}
}});
app.use(seneca.export('web'))
app.use(express.static(path.join(__dirname, '../../dist/js')))
app.use(express.static(path.join(__dirname, '../../dist/public')))
app.listen(3002, function() {
console.log('listening on port 3002');
});
function getData(arg, done){
//Getting data from somewhere....
//Here I would like to send back a response to the client.
}
}())
工程!這比預期的方式更容易。 – Yuval
嗨,當我嘗試運行你的這個腳本時,我得到一個錯誤,說「app.use()需要中間件功能」? –
同樣在這裏,塞內卡入門結束了相同的錯誤 – Ben