簡體   English   中英

節點express.Router()。route(/ verb /:optionalParameter)?

[英]Node express.Router().route(/verb/:optionalParameter)?

我使用節點express Router模塊,它是route()方法。

我需要以這種方式接受可選參數:

var express = require('express');
var router = express.Router();

router.route('/verb/:optionalParameter').get(function(req, res, next) {
  // ...
}

如何指定optionalParameter
我確實嘗試過:

router.route('/verb/:optionalParameter*?').get(function(req, res, next) {

curl -X GET -H "Accept: application/json" http://localhost:3000/verb/option1

效果很好,但是

curl -X GET -H "Accept: application/json" http://localhost:3000/verb

吐出404 ...

我確定我缺少明顯的東西... :-(有任何線索嗎?

響應為404,因為不存在route /verb ,僅存在/verb/:optionalParameter

對於作品,需要創建另一條路線:

var express = require('express');
var router = express.Router();

router.route('/verb/:optionalParameter').get(function(req, res, next) {
  // ...
}

// route localhost:3000/verb
router.route('/verb').get(function(req, res, next) {
  // ...
}

並嘗試:

curl -X GET -H "Accept: application/json" http://localhost:3000/verb

嘗試以下方法:

var express = require('express')
var router = express.Router()
var app = express()
app.route('/verb/:optionalParameter?').get(function(req, res, next) { console.log('hello world') })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM