2017-03-20 237 views
1

我有一個API需要3個url參數並寫入到mongodb集合中。我的理解是,它應該是發佈請求,因爲它將數據發送到我的後端,但是當發送數據時,我得到一個Can not Get ...錯誤。POST請求無法獲取

routes.js

// JavaScript source code 
var friends = require('./../controllers/friends.js'); 

module.exports = function(app) 
{ 
    app.post('/friends/new/:fname/:lname/:bday', function (request, response) 
    { 
     friends.create(request, response); 
    }) 
} 

控制器:

// JavaScript source code 
var mongoose = require('mongoose'); 
var Friend = mongoose.model('Friend'); 

module.exports = 
{ 
    create: function(request, response) 
    { 
     var friendInstance = new Friend(); 
     friendInstance.first_name = request.params.fname; 
     friendInstance.last_name = request.params.lname; 
     friendInstance.b_day = request.params.bday; 
     friendInstance.save(function(err) 
     { 
      if (err) 
      { 
       response.josn(err); 
      } 
} 

網址:

http://localhost:8000/friends/new/Gelo/Maverick/9999-9-99 

錯誤:

Cannot GET /friends/new/Gelo/Maverick/9999-9-99 
+0

你提出請求的代碼在哪裏? –

+0

是否檢查過開發人員工具網絡選項卡以確認請求是「POST」而不是「GET」 - oops,這是node.js - 您沒有顯示客戶端的功能 –

+0

如果您要發送數據作爲URL參數,那麼請求不需要是「POST」。 –

回答

0

您看到該錯誤,因爲您必須嘗試通過發送GET請求的Web瀏覽器訪問URL。您應該使用像Postman這樣的應用程序來創建POST請求。