请问事件订阅http server能否从外部传入?
stonyz opened this issue · 2 comments
stonyz commented
示例代码为
lark.event.startServer(conf, 8089)
如果程序中已经启动的一个http server, 能否直接传入lark?
zhaoche27 commented
应该不行,你看看 sample/src/event/ express.js,类比一下,主要使用了 lark.event.httpHandle。
app.post('/webhook/event', function (req, res, next) {
console.log(req.body)
const request = new lark.core.Request()
Object.entries(req.headers).forEach(([k, v]) => {
request.headers[k] = v
})
request.body = req.body
lark.event.httpHandle(conf, request, undefined).then(response => {
res.status(response.statusCode).send(response.body)
})
})
LeoQuote commented
如果是 express 的话, 是可以的, 你把这个路由接入一个 express 中间件, 然后中间件里像上面一样这么写就行了