我一直在尝试使用Nodejs和Express4创建一个快速的REST API,因为我需要一个API来快速制作原型。虽然我需要所有基本的CRUD操作,但我尝试从以下URL运行示例:http://runnable.com/U7bnCsACcG8MGzEc/restful-api-with-node-js-express-4 此地址的示例仅支持GET,但我相信我可以快速调整它以支持POST,PUT和DELETE。我不关心内存数据,甚至更可取。
您可以点击查看那里的代码。
然而,一旦我启动了我的服务器并继续http://localhost:8080/players
我得到了#34;无法获得/玩家"在我的浏览器中。
有什么想法吗?如果某人有另一个简短/快速的REST API示例,其中Nodejs具有内存持久性,我也会接受它:)
答案 0 :(得分:0)
如果您想使用CRUD操作创建快速API,请尝试npm deployd,但没有表达。如果您喜欢编码,请使用express-generator
答案 1 :(得分:0)
请参考以下代码,使用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;
链接:http://codeforgeek.com/2015/03/restful-api-node-and-express-4/