2016-09-24 70 views
0

我正在運行基本快遞服務器代碼(如下所示)。我試圖通過路線獲取req.params值。Express JS,req.params命令在應用程序部署到Heroku時不起作用

var express = require("express"); 
var app = express(); 
var PORT = process.env.PORT || 3000; 

app.get("/", function(req, res, next){ 
    res.send("Timestamp Microservice"); 
}); 

app.get("/:unix", function(req, res, next){ 
    res.send(req.params); 
}); 

app.listen(PORT, function(){ 
console.log("Server running on: " + PORT + "!"); 
}); 

在localhost:1234分之3000,響應是一個JSON對象

{ unix: "1234"} 

但是當我部署此應用的Heroku,它顯示

Cannot GET/1234 

你能告訴我什麼的問題以及如何解決?我剛開始學習Node和Express,並且不太瞭解。謝謝。

回答

-1

更新: 我必須使用body-parser節點模塊,現在問題已解決。

var bodyParser = require("body-parser"); 
app.use(bodyParser.json()); 
+0

儘管這並沒有什麼意義,因爲'body-parser'不用於填充'req.params',也不用於'GET'請求。也許你的初始部署失敗了,在添加'body-parser'並重新部署新的代碼後,最終命中了服務器。 – robertklep

+0

那麼,這絕對沒有意義。這個問題一定是在別處。根本不存在GET請求的請求體。 – Brad