25/07/2019, 10:07
Bắt đầu Nodejs API (Authentication – CRUD) cho người mới học
Trong bài viết này, mình và các bạn sẽ cùng thực hiện Authentication và CRUD của 1 ứng dụng Nodejs API một cách đơn giản, phù hợp với những bạn mới học và mới bắt đầu tiếp cận với nodejs. JavaScript Node.js Postman Express (JS framework) MongoDB (Database) Npm (quản lý ...
Trong bài viết này, mình và các bạn sẽ cùng thực hiện Authentication và CRUD của 1 ứng dụng Nodejs API một cách đơn giản, phù hợp với những bạn mới học và mới bắt đầu tiếp cận với nodejs.
- JavaScript
- Node.js
- Postman
- Express (JS framework)
- MongoDB (Database)
- Npm (quản lý các package)
- Visual Studio Code (hoặc Sublime Text)
Đầu tiên hãy tạo 1 thư mục để triển:
1 2 3 4 5 |
~~$ mkdir MyNodeProject ~~$ cd MyNodeProject ...:~/MyNodeProject$ npm init |
Đến đây bạn đã có 1 file package.json:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span> <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.0.0"</span><span class="token punctuation">,</span> <span class="token property">"description"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"main"</span><span class="token operator">:</span> <span class="token string">"index.js"</span><span class="token punctuation">,</span> <span class="token property">"scripts"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"test"</span><span class="token operator">:</span> <span class="token string">"echo "Error: no test specified" && exit 1"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"author"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"license"</span><span class="token operator">:</span> <span class="token string">"ISC"</span> <span class="token punctuation">}</span> |
Tiếp theo bạn cần thiết lập Express bằng cách:
1 2 3 4 |
...:~/MyNodeProject$ npm i express |
File package.json của bạn sẽ có dạng như này:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span> <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.0.0"</span><span class="token punctuation">,</span> <span class="token property">"description"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"main"</span><span class="token operator">:</span> <span class="token string">"index.js"</span><span class="token punctuation">,</span> <span class="token property">"scripts"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"test"</span><span class="token operator">:</span> <span class="token string">"echo "Error: no test specified" && exit 1"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"author"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"license"</span><span class="token operator">:</span> <span class="token string">"ISC"</span><span class="token punctuation">,</span> <span class="token property">"dependencies"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"express"</span><span class="token operator">:</span> <span class="token string">"^4.16.4"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> |
Rồi, bạn tạo 1 file index.js giống như main ở trong package.json
1 2 3 4 |
...:~/MyNodeProject$ touch index.js |
Trong file index.js sẽ cần thiết lập như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<span class="token keyword">const</span> express <span class="token operator">=</span> <span class="token function">require</span><span class="token punctuation">(</span><span class="token string">'express'</span><span class="token punctuation">)</span> <span class="token keyword">const</span> app <span class="token operator">=</span> <span class="token function">express</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">const</span> <span class="token constant">PORT</span> <span class="token operator">=</span> <span class="token number">8797</span> app<span class="token punctuation">.</span><span class="token function">use</span><span class="token punctuation">(</span><span class="token string">'/'</span><span class="token punctuation">,</span> <span class="token punctuation">(</span>req<span class="token punctuation">,</span> res<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span> res<span class="token punctuation">.</span><span class="token function">json</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token string">"mess"</span><span class="token punctuation">:</span> <span class="token string">"Hello Would!"</span><span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">}</span><span class="token punctuation">)</span> app<span class="token punctuation">.</span><span class="token function">listen</span><span class="token punctuation">(</span><span class="token constant">PORT</span><span class="token punctuation">,</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">"Server started on http://localhost:"</span><span class="token operator">+</span><span class="token constant">PORT</span><span class="token punctuation">)</span><span class="token punctuation">}</span><span class="token punctuation">)</span> module<span class="token punctuation">.</span>exports <span class="token operator">=</span> app<span class="token punctuation">;</span> |
Thử start nhé: