javascript - NodeJS 服务器错误

标签 javascript angularjs node.js

我学习 Angular 的第三天。我已经开始学习如何进行 ajax 调用,但我陷入了教程要求我运行 server.js 的阶段。我已经安装了 nodejsexpress 但当我尝试运行 node server.js

编辑:

我尝试按照其网站上的示例将代码从 express 3.0 更改为 express 4.0。我的新 server.js 文件如下所示:

服务器.js

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

/* EXPRESS 3.0
app.configure(function () {
    app.use(express.static(__dirname, '/'));
});
*/

// EXPRESS 4.0
var env = process.env.NODE_ENV || 'development';
if ('development' == env) {
   // configure stuff here
    app.use(express.static(__dirname, '/'));
}

/*EXPRESS 3.0
app.get('/customers/:id', function(req, res) {
    var customerId = parseInt(req.params.id);
    var data = {};
    for (var i = 0, len = cutomers.length; i < len; i++) {
        if (customers[i].id === customerId) {
            data = customer[i];
            break;
        }
    }
    res.json(data)
});
*/

//EXPRESS 4.0
app.route('/customers/:id')
    .get(function(req, res) {
    var customerId = parseInt(req.params.id);
    var data = {};
    for (var i = 0, len = cutomers.length; i < len; i++) {
        if (customers[i].id === customerId) {
            data = customer[i];
            break;
        }
    }
    res.json(data)
    })

/* EXPRESS 3.0
app.get('/customers', function(req, res) {
    res.json(customers);
});
*/

//EXPRESS 4.0
app.route('/customers')
    .get (function(req, res) {
    res.json(customers);
})


app.listen(3000);

console.log('Express listening on port 3000');


var customers = [
          { 
            id: 1,
            joined: '2005-09-07', 
            name: 'Mayweather', 
            city: 'Brooklyn', 
            orderTotal: '43.1299',
            orders: [
              {
                id: 1,
                product: 'Pencils',
                total: 9.9956
              }
            ]

          }, 
          {
            id: 2,
            joined: '2005-09-07', 
            name: 'Jason', 
            city: 'Cleveland', 
            orderTotal: '89.8933',
            orders: [
              {
                id: 1,
                product: 'iPad',
                total: 20.9956
              }
            ]  
          }, 
          {
            id: 3,
            joined: '1999-08-27', 
            name: 'Jade', 
            city: 'Wroclaw', 
            orderTotal: '77.0092',
            orders: [
              {
                id: 1,
                product: 'Pillows',
                total: 12.2311
              }
            ]
          }, 
          {
            id: 4,
            joined: '2015-09-01', 
            name: 'David', 
            city: 'Accra', 
            orderTotal: '13.8465',
            orders: [
              {
                id: 1,
                product: 'Serek',
                total: 11.4782
              }
            ]
          }, 
          {
            id: 5,
            joined: '2001-01-18', 
            name: 'Doyet',
            city: 'Paris',
            orderTotal: '23.9930',
            orders: [
              {
                id: 1,
                product: 'Serek',
                total: 11.4782
              }
            ]
          }];

终端看起来像这样:

node server.js
/Users/siaw/Desktop/angularjshelloworld/node_modules/express/node_modules/serve-static/index.js:47
  var opts = Object.create(options || null)
                    ^
TypeError: Object prototype may only be an Object or null: /
    at Function.create (native)
    at Function.serveStatic (/Users/siaw/Desktop/angularjshelloworld/node_modules/express/node_modules/serve-static/index.js:47:21)
    at Object.<anonymous> (/Users/siaw/Desktop/angularjshelloworld/server.js:15:27)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)
    at node.js:814:3

有什么办法可以解决这个问题吗?

最佳答案

Application.configure() 在 3.x 和 removed 中被记录为遗留版本在 4.x 中

关于javascript - NodeJS 服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32365598/

相关文章:

javascript - css html div 向左移动无法正常工作

javascript - 我的 NODE 代码不工作是因为我使用的是 Windows 而不是 Linux?

angularjs - 使用 AngularJs 发布请求时未设置 CSRF Coo​​kie - Django 后端

javascript - REST-api 异步查询的随机结果

javascript - Angular 通用解析

javascript - 无法创建新的 MeanIO 包。需要依赖 'access'

node.js - ClientJade - 执行jade.render()时遇到问题

javascript - 验证动态添加的数组输入 - jQuery Validate

javascript - JQuery closest() + find() 树遍历

javascript - FlexBox 对齐(拉伸(stretch))最后一个元素