繁体   English   中英

express.js 中的可选参数

[英]Optional parameters in express.js

我正在尝试使用所有组件(从、到、主题、textBody 等)做一个 email 发件人...,但我不知道如何在 express.js 中设置可选参数,我已经搜索了一些不同的 stackoverflow问题,但没有回答我的问题,请参阅我的代码:

//Here I have doubts 
app.get(`/from=:from&to=:to&subject=:subject?&textBody=:textBody?&htmlBody=:htmlBody?&cc=:cc?&bcc=:bcc?&attachments=:attachments?`, (req, res) => {

  const from = req.params.from;
  const to = req.params.to;
  const subject = req.params.subject;
  const textBody = req.params.textBody;
  const htmlBody = req.params.htmlBody;
  const cc = req.params.cc;
  const bcc = req.params.bcc;
  const attachments = req.query.attachments;

//code goes here...

})

请帮我。 我会很感激你的回答

你只需要添加? 使参数可选。 通过添加来更新您的路线? . 如果关联的param中没有提供值,则undefined将是值。 例如,如果未提供subject ,则req.params.subjectundefined ,您可以将逻辑添加到主题字段中以具有所需/默认值,

app.get(
  `/api/sendemail/:from?/:to?/:subject?/:textBody?/:htmlBody?/:cc?/:bcc/:attachments?`,
  (req, res) => {
    const from = req.params.from;
    const to = req.params.to;
    const subject = req.params.subject ? req.params.subject : '';
    const textBody = req.params.textBody;
    const htmlBody = req.params.htmlBody;
    const cc = req.params.cc;
    const bcc = req.params.bcc;
    const attachments = req.query.attachments;

    //code goes here...
  }
);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM