node.js - 如何在nodejs中处理多个端点

标签 node.js sap-conversational-ai

我正在开发 SAP Conversational AI 机器人,以通过始终命中/login 部分的单个 webhook.js 文件处理 SAP 登录和产品查询,我想修改此文件 (presales_assistance_webhook.js) 来处理多帖子支持,并且由于 SAP Conversational AI 限制而无法使用多个文件。我是 Nodejs 新手,需要一些专家支持。

//1.登录意图:app.post('/login', (req, res) => {})

//2.产品查询意图:app.post('/presales', (req, res) => {})

presales_assistance_webhook.js

const express = require('express')
const bodyParser = require('body-parser')

const app = express()
const port = process.env.PORT || 5000
app.use(bodyParser.json())

app.post('/login', (req, res) => {
  console.log(req.body)


  res.send({
    replies: [{
      type: 'text',
      content: 'Welcome to b1 system !',
    }],
    conversation: {
      memory: {
        key: 'value'
      }
    }
  })
})
app.post('/presales', (req, res) => {
  console.log(req.body)


  res.send({
    replies: [{
      type: 'text',
      content: 'Output ok',
    }],
    conversation: {
      memory: {
        key: 'value'
      }
    }
  })
})

app.post('/errors', (req, res) => {
  console.log(req.body)
  res.send()
})

app.listen(port, () => {
  console.log(`Server is running on port ${port}`)
}) 

最佳答案

你做得很好。该代码对我有用。

const express = require('express')
const bodyParser = require('body-parser')

const app = express()
const port = process.env.PORT || 5000
app.use(bodyParser.json())

app.post('/login',getLoginInformations);
app.post('/presales',getPresalesInformations);

function getLoginInformations(req, res) {  
  console.log(req.body) 
  res.send({
    replies: [{
      type: 'text',
      content: 'Welcome to b1 system !'
    }],
    conversation: {
      memory: {
        key: 'value'
      }
    }
  })
}

function getPresalesInformations(req, res) {  
  console.log(req.body) 
  res.send({
    replies: [{
      type: 'text',
      content: 'Output ok'
    }],
    conversation: {
      memory: {
        key: 'value'
      }
    }
  })
} 
app.post('/errors', (req, res) => {
  console.log(req.body)
  res.send()
})

app.listen(port, () => {
  console.log(`Server is running on port ${port}`)
})

关于node.js - 如何在nodejs中处理多个端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55982489/

相关文章:

javascript - 如何使用 Recast.ai 使用 message.addReply 添加来自基于 promise 的 API 调用的结果?

node.js - 调用 facebook-messenger webhook 时如何修复 bot-connector 上的 HTTP-Status 401(未经授权)?

node.js - 通过 Facebook 身份验证请求用户名时出错

mysql - Node 连接MySQL失败,没有任何错误提示

node.js - 如何解决 NodeJS 中 require (“../../../../../../../” ) 的挫败感?

node.js - 在nodejs中在不同路径但相同端口上打开websocket时出现EADDRINUSE错误

node.js - Node dbus-native

android - 我可以将 Smooch.io 用于与其提供的不同的 NLP 吗?