簡體   English   中英

使用node.js創建REST API的最佳實踐

[英]Best Practice to create REST APIs using node.js

我來自.Net和C#背景,並且是Node.js的新手。 我正在研究一個項目,該項目混合使用MongoDB和Node.JS。

在MongoDB中,來自各種工具的數據存儲在不同的集合中。 我必須使用Node.JS對該數據進行CRUD操作來創建多個REST API,這些API將從React.JS應用程序中調用。

我想將API保留在用於單獨工具的單獨文件中,然后調用將所有文件都包含到app.js文件中。

請以最佳方式幫助我。

出於POC的目的,我創建了一個node.js應用程序,在其中創建了app.js文件,並為GET | POST | DELETE API編寫了所有代碼。 一切正常。

var _expressPackage = require("express");  
var _bodyParserPackage = require("body-parser");  
var _sqlPackage = require("mssql");  
var app = _expressPackage();  
var cors = require("cors");
var auth = require('basic-auth');
var fs = require('fs');
const nodeMailer = require('nodemailer'); 


//Lets set up our local server now.  
var server = app.listen(process.env.PORT || 4000, function () {  
    var port = server.address().port;  
    console.log("App now running on port", port);  
});  
app.get("/StudentList", function(_req ,_res){  
    console.log("Inside StudentList");
    var Sqlquery = "select * from tbl_Host where HostId='1'";    
    GetQueryToExecuteInDatabase(_req,_res, Sqlquery,function(err,data){       
        console.log(data);
    });
});

不完全知道您的應用程序打算做什么,但是通常如果您不提供網頁並且您的API不太復雜,則無需使用express。 您可以在NodeJS中本地構建一個簡單的服務器來提供數據。

另外,如果您的應用程序有很多路由(或將來可能會使用),則最好將諸如GetQueryToExecuteInDatabase()之類的輔助函數放在app.js之外的單獨文件中,例如utils.js。

根據我對要執行的操作的了解,文件結構應如下所示:

  • 數據(db相關文件)
  • 服務(每個api服務包含一個文件)
  • app.js
  • utils.js

希望這可以幫助。

暫無
暫無

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

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