Javascript 带有Nodejs和Express4的基本REST API

Javascript 带有Nodejs和Express4的基本REST API,javascript,node.js,api,rest,express,Javascript,Node.js,Api,Rest,Express,我一直在尝试使用Nodejs和Express4创建一个快速restapi,因为我需要一个API来快速创建一个原型。虽然我需要所有基本的CRUD操作,但我尝试从以下URL运行该示例: 这个地址中的示例只支持GET,但我相信我可以很快将其修改为支持POST、PUT和DELETE。我不关心内存中的数据,它甚至更可取 您可以单击此处查看代码 但是,一旦启动服务器并继续http://localhost:8080/players 我无法在浏览器中获取/播放程序 有什么想法吗?如果有人有另一个简短/快速的RE

我一直在尝试使用Nodejs和Express4创建一个快速restapi,因为我需要一个API来快速创建一个原型。虽然我需要所有基本的CRUD操作,但我尝试从以下URL运行该示例: 这个地址中的示例只支持GET,但我相信我可以很快将其修改为支持POST、PUT和DELETE。我不关心内存中的数据,它甚至更可取

您可以单击此处查看代码

但是,一旦启动服务器并继续http://localhost:8080/players

我无法在浏览器中获取/播放程序


有什么想法吗?如果有人有另一个简短/快速的REST API示例,其中包含内存中持久化的Nodejs,我也会考虑它:

如果您想创建带有CRUD操作的快速API,请尝试npm,但没有express。如果您喜欢编写代码,那么请使用express generator

请参考以下代码,使用ExpressJS创建REST API

Server.js

var express = require("express");
var mysql   = require("mysql");
var bodyParser  = require("body-parser");
var rest = require("./REST.js");
var app  = express();

function REST(){
    var self = this;
    self.connect_to_mysql();
}

REST.prototype.connect_to_mysql = function() {
    var self = this;
    var pool      =    mysql.createPool({
        connectionLimit : 100,
        host     : 'localhost',
        user     : 'root',
        password : '',
        database : 'restful_api_demo',
        debug    :  false
    });
    pool.getConnection(function(err,connection){
        if(err) {
          self.stop(err);
        } else {
          self.configureExpress(connection);
        }
    });
}

REST.prototype.configureExpress = function(connection) {
      var self = this;
      app.use(bodyParser.urlencoded({ extended: true }));
      app.use(bodyParser.json());
      var router = express.Router();
      app.use('/api', router);
      var rest_router = new rest(router,connection);
      self.start_server();
}

REST.prototype.start_server = function() {
      app.listen(3000,function(){
          console.log("All right ! I am alive at Port 3000.");
      });
}

REST.prototype.stop = function(err) {
    console.log("ISSUE WITH MYSQL \n" + err);
    process.exit(1);
}

new REST(); // Instantiate class.
REST.js

function REST_ROUTER(router,connection) {
    var self = this;
    self.handle_routes(router,connection);
}

REST_ROUTER.prototype.handle_routes = function(router,connection) {
    router.get("/",function(req,res){
        res.json({"Message" : "Hello World !"});
    })
}

module.exports = REST_ROUTER;

链接:

您是否安装了npm?两点:首先,在示例中,使用的端口是80,而不是8080。第二,你应该试试http://localhost:8080/api/players或http://localhost:80/api/players 我不知道你用的是哪个号码。@Roy是的,我安装了npm。@Rodrigo-是的,我在server.js中将端口从80更改为8080。对不起,我忘了提那件事。关于URL:works,您是对的。谢谢