Ở bài 21 Ta đã biết cách cấu hình IISNode rồi nha (và bắt buộc phải làm được thì mới tiếp tục với bài 28 này được).
Nhiệm vụ của Ta bây giờ là cấu hình bài 27 chạy 24/7(Bài đã hoàn thành đầy đủ 4 Method: HTTPPOST, HTTPGET, HTTPPUT, HTTPDELETE). Ở đây có sự khác biệt khó khăn hơn nữa là ta dùng thư viện express, dùng mongodb, dùng Web API. Bây giờ làm sao để cấu hình nó chạy trên Web Server đây ta?
Bây giờ mở bài 27 lên cấu hình IISNode, vì ta có liên quan tới iisnode+express nên cần có thêm một số cấu hình (lưu ý là phải hoàn thành bài 21 trước thì mới tiếp tục bài này):
Bước 1: Làm bài 21
Bước 2:
Tải và cài đặt url-rewrite: https://www.iis.net/downloads/microsoft/url-rewrite
Bấm vào Install this extension để tải rồi cài vào máy, nó ra màn hình bên dưới bấm nút Save File:
Double click vào file tải về để cài:
Chờ nó chạy để ra màn hình Web Platform Installer như bên dưới:
Bấm Install để cài đặt, nó ra màn hình hỏi lung tung về URL Rewrite bên dưới:
rồi rung đùi chờ nó tải và cài đặt
Rung đùi cho tới khi nào cài xong:
Tới đây là ngon lành cành đào nha. Bấm FINISH để kết thúc
Bước 3:
Thêm file cấu hình web.config cho Project NodejsRESTful ở bài 27. Cách file web.config đã hướng dẫn ở bài 21 rồi
[code language=”xml”]
<configuration>
<system.webServer>
<handlers>
<add name=”iisnode” path=”server.js” verb=”*” modules=”iisnode” />
</handlers>
<rewrite>
<rules>
<rule name=”api”>
<match url=”/*” />
<action type=”Rewrite” url=”server.js” />
</rule>
</rules>
</rewrite>
<security>
<requestFiltering>
<hiddenSegments>
<add segment=”node_modules” />
</hiddenSegments>
</requestFiltering>
</security>
</system.webServer>
</configuration>
[/code]
Xem hình:
Như vậy ta đã thêm thành công file web.config rồi
Bước 4:
Cấu hình Web Service cho Project để chạy 24/7 trên IIS (cái này bạn tùy thích đặt tên):
Ví dụ: Tui đặt alias là nodejsapi. Physical path trỏ tới đường dẫn lưu server.js. Cách tạo, đặt như thế nào đã nói rất rõ trong bài 21 tự coi lại nha
Bước 5: Kiểm thử
Mở PostMan hoặc các phần mềm tương đương khác lên để kiểm thử:
Ở trên Tui test API http://localhost/nodejsapi/products
Các bạn tự test các API còn lại như:
http://localhost/nodejsapi/products/P1
Hay kiểm thử API thêm Product:
http://localhost/nodejsapi/addProduct
http://localhost/nodejsapi/editProduct
http://localhost/nodejsapi/deleteProduct
Như vậy các bạn đã biết toàn bộ các method: HTTPPOST, HTTPGET, HTTPUT, HTTPDELETE. Và đồng thời biết cách cấu hình IISNode cho WEB API chạy 24/7 rồi. Bài học sau Tui sẽ hướng dẫn các bạn cách thức dùng Android Kotlin để triệu gọi toàn bộ các Web API này.
Lưu ý khi các thiết bị (ứng dụng khác) muốn tương tác tới các WEB API này thì các Thím phải đưa về Địa chỉ IP hoặc đẩy lên 1 hosting nào đó để dùng. Ví dụ như trường hợp này thì ta lấy địa chỉ IP của máy Tui chẳng hạn, test API lấy danh sách Product (nếu để localhost sẽ sài vì thiết bị khác nếu nó có OS nó tưởng localhost là của nó):
Các bạn chú ý theo dõi nhé
Source code cho phần cấu hình này tải ở đây
Các khóa học online khác, bạn có thể tham khảo tại đây:
Chúc các bạn thành công!
5 thoughts on “Bài 28-NodeJS RESTful Web Services – Cấu hình IISNode”