Web server đơn giản bằng C#

Một web server đơn giản bằng C# có thể làm 1 server xử lý ảnh cho nhiều client. Phù hợp cho các ứng dụng có nhiều thiết bị gửi dữ liệu xử lý tập trung tại 1 server. Bạn có thể viết ứng dụng bằng mobile hoặc cho các máy tính khác kết nối vào.

Bài viết này chia sẻ về 1 source code chạy ổn định, ít lỗi, phù hợp với nhiều browser khác nhau. Lưu ý là chỉ phục vụ cho các nhu cầu đơn giản, không đòi hỏi bảo mật, không phục vụ được nhiều client.

Kiến thức cơ bản

Nếu bạn không chuyên về web bạn chỉ cần nắm được 1 số khái niệm cơ bản:
Request: gửi yêu cầu lên server
POST request: 1 phương thức phù hợp để gửi hình ảnh lên server
GET request: 1 phương thức dùng để lấy dữ liệu từ server
Response: kết quả trả về
Base64: 1 chuẩn mã hóa phổ biến dùng để mã hóa ảnh gửi lên server. Đọc thêm: Tìm hiểu ảnh base64
Port: mỗi chương trình muốn kết nối đến các máy khác được gán cho 1 port. Khi bạn gửi yêu cầu đến server kèm theo port thì server sẽ gửi yêu cầu đến chương trình chạy ở port đó. Web server mặc định là port 80.
Localhost: máy mà chương trình đang chạy

Sử dụng

Chương trình sử dụng .NET framework 4, các bạn có thể chạy từ Visual Studio 2015 trở lên (hiện nay là 2019).

Sau khi build thành công bạn sẽ thấy chương trình chạy lên, để kiểm tra bạn mở browser và gõ localhost.

Web server viết có 1 số option như sau:

Giả sử muốn cho client truy cập vào 1 folder thì đầu tiên ấn phím r để set từ VirtualDirectory thành DriveDirectory. Sau đó ấn phím t và chọn folder mong muốn, khi đó trên browser sẽ hiển thị localhost như hình dưới:

Download

https://github.com/thigiacmaytinh/SimpleHttpd

Leave a Reply