[{"title":"( 30 个子文件 37KB ) NodeAPI:在Node.js + MongoDB上的简单RESTful API实现-源码","children":[{"title":"NodeAPI-master","children":[{"title":".gitignore <span style='color:#111;'> 173B </span>","children":null,"spread":false},{"title":"Dockerfile <span style='color:#111;'> 228B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.30KB </span>","children":null,"spread":false},{"title":"package-lock.json <span style='color:#111;'> 78.81KB </span>","children":null,"spread":false},{"title":"LICENSE.md <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":".dockerignore <span style='color:#111;'> 173B </span>","children":null,"spread":false},{"title":"bin","children":[{"title":"www <span style='color:#111;'> 364B </span>","children":null,"spread":false}],"spread":true},{"title":"generateData.js <span style='color:#111;'> 1.47KB </span>","children":null,"spread":false},{"title":"docker-compose.yml <span style='color:#111;'> 431B </span>","children":null,"spread":false},{"title":".github","children":[{"title":"workflows","children":[{"title":"ci.yml <span style='color:#111;'> 557B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"libs","children":[{"title":"app.js <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":"model","children":[{"title":"client.js <span style='color:#111;'> 456B </span>","children":null,"spread":false},{"title":"refreshToken.js <span style='color:#111;'> 527B </span>","children":null,"spread":false},{"title":"accessToken.js <span style='color:#111;'> 455B </span>","children":null,"spread":false},{"title":"article.js <span style='color:#111;'> 631B </span>","children":null,"spread":false},{"title":"user.js <span style='color:#111;'> 1.15KB </span>","children":null,"spread":false}],"spread":true},{"title":"db","children":[{"title":"mongoose.js <span style='color:#111;'> 499B </span>","children":null,"spread":false}],"spread":false},{"title":"log.js <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":"auth","children":[{"title":"oauth2.js <span style='color:#111;'> 3.21KB </span>","children":null,"spread":false},{"title":"auth.js <span style='color:#111;'> 2.79KB </span>","children":null,"spread":false}],"spread":false},{"title":"config.js <span style='color:#111;'> 276B </span>","children":null,"spread":false},{"title":"routes","children":[{"title":"articles.js <span style='color:#111;'> 3.74KB </span>","children":null,"spread":false},{"title":"api.js <span style='color:#111;'> 276B </span>","children":null,"spread":false},{"title":"users.js <span style='color:#111;'> 749B </span>","children":null,"spread":false},{"title":"oauth.js <span style='color:#111;'> 253B </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"README.md <span style='color:#111;'> 4.08KB </span>","children":null,"spread":false},{"title":"docker.config.json <span style='color:#111;'> 67B </span>","children":null,"spread":false},{"title":"test","children":[{"title":"server.test.js <span style='color:#111;'> 5.21KB </span>","children":null,"spread":false}],"spread":false},{"title":"config.json <span style='color:#111;'> 420B </span>","children":null,"spread":false},{"title":"logs","children":[{"title":".gitkeep <span style='color:#111;'> 0B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":true}]