簡體   English   中英

POST 返回 404 Not Found

[英]POST returns 404 Not Found

我最近開始使用 MEAN Stack 來創建一個基本的應用程序,所以我是一個初學者,我設置了我的控制器和所有東西,我想發布,但是它返回 api/user not found,有人可以查明問題並幫助我出去? 謝謝。

服務器.js:

var app = require ('./app/app');
var signupController  = require ('./server/signup-controller');

app.post('api/users', signupController.create);
app.listen('8080', function(){

    console.log('[OK] => HTTP Server listening on http://localhost:8080');
    require('./app/db').init('mongodb://localhost:27017/shopialmedia' );
});

服務器端控制器(signup-controller.js):

module.exports.create = function (req, res) {
    console.log(req.body);
}

客戶端控制器(signup-controller.js):

app.controller('signupController', ['$scope', '$resource', function ($scope, $resource) {
    var User = $resource('/api/users');

    $scope.createUser = function () {
        var user = new User();
        user.email = $scope.userEmail;
        user.password = $scope.userPass;
        user.firstName = $scope.userFName;
        user.lastName = $scope.userLName;
        user.age = $scope.userAge;
        user.$save(function (result){
            $scope.user.push(result);
            $scope.userEmail = '';
            $scope.userPass = '';
            $scope.userFName = '';
            $scope.userLName = '';
            $scope.userAge = '';
        });
    }
}]);

我的模塊:

var app = angular.module('signupApp', ['ngResource']);

我的 app.js :

var express = require ('express');
var app = express();


app.use(express.static('public'));
require('./routes')(app);

module.exports = app;

當我在我的網頁上運行應用程序並提交信息時,它返回 api/user 404 Not found any Recommendations on what to do,我將不勝感激。 正如我所說,我是初學者,所以請考慮到這一點。

Server.js 添加:

app.get('api/users', signupController.list);

signup-controller.js 添加:

  mongoose = require('mongoose'),
  User = mongoose.model('User');
module.exports.list = function(req, res){
var searcher = req.query || {};
User.find(searcher)
.sort('-created')
  .exec(function (err, users) {
    if (err) {
      return res.status(400).send({
        message: errorHandler.getErrorMessage(err)
      });
    }

    res.json(users);
  });
  };

顯然,您還必須使用一個可能名為 main.js 的文件連接到 mongoose,然后您將需要一個 UserModel.js(或等效文件),您可以在其中使用 mongoose Schema 定義用戶等的屬性...

我的意思是,如果你想要一些更簡單的開始,你會錯過很多東西,你可以這樣做:

module.exports.list = function(req, res){
    var users = [];
    res.json(users);
  };

還認為你需要這個,這也是更好的格式:

  var router = express.Router();
  router.route('/')
    .get(users.list)
    .get(users.create)
  app.use('/api/users', router);

不知道這應該做什么或什么 ./routes 是: require('./routes')(app);

暫無
暫無

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

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