Hãy thử điều này nếu phương thức 0.0.0.0 không hoạt động
Thứ nhàm chán
Cá nhân tôi đã chiến đấu rất nhiều để ứng dụng của tôi có thể truy cập được vào các thiết bị khác (máy tính xách tay và điện thoại di động) thông qua một máy chủ cục bộ. Tôi đã thử phương pháp 0.0.0.0, nhưng không có may mắn. Sau đó, tôi đã thử thay đổi cổng, nhưng nó không hoạt động. Vì vậy, sau khi thử một loạt các kết hợp khác nhau, tôi đã tìm đến kết hợp này và nó đã giải quyết vấn đề của tôi khi triển khai ứng dụng của mình trên máy chủ cục bộ.
Các bước
- Lấy địa chỉ IPv4 cục bộ của máy tính của bạn. Điều này có thể được thực hiện bằng cách gõ
ipconfig
trên Windows và ifconfig
trên linux và Mac.
Xin lưu ý: Bước trên là được thực hiện trên máy bạn đang phục vụ ứng dụng và không phải trên máy bạn đang truy cập ứng dụng đó. Cũng lưu ý rằng địa chỉ IPv4 có thể thay đổi nếu bạn ngắt kết nối và kết nối lại với mạng.
Bây giờ, chỉ cần chạy ứng dụng bình với địa chỉ IPv4 có được.
flask run -h 192.168.X.X
Ví dụ: Trong trường hợp của tôi (xem hình ảnh), tôi đã chạy nó dưới dạng:
flask run -h 192.168.1.100
Trên thiết bị di động của tôi
Công cụ tùy chọn
Nếu bạn đang thực hiện quy trình này trên Windows và sử dụng Power Shell làm CLI và bạn vẫn không thể truy cập trang web, hãy thử lệnh CTRL + C trong trình bao chạy ứng dụng. Power Shell đôi khi bị đóng băng và nó cần một nhúm để hồi sinh. Làm điều này thậm chí có thể chấm dứt máy chủ, nhưng đôi khi nó cũng có mẹo.
Đó là nó. Hãy giơ ngón tay cái lên nếu bạn thấy điều này hữu ích .😉
Một số công cụ tùy chọn khác
Tôi đã tạo một tập lệnh Powershell ngắn để lấy địa chỉ IP của bạn bất cứ khi nào bạn cần:
$env:getIp = ipconfig
if ($env:getIp -match '(IPv4[\sa-zA-Z.]+:\s[0-9.]+)') {
if ($matches[1] -match '([^a-z\s][\d]+[.\d]+)'){
$ipv4 = $matches[1]
}
}
echo $ipv4
Lưu nó vào một tệp có phần mở rộng .ps1 (cho PowerShell) và chạy nó trước khi bắt đầu ứng dụng của bạn. Bạn có thể lưu nó trong thư mục dự án của bạn và chạy nó dưới dạng:
.\getIP.ps1; flask run -h $ipv4
Lưu ý: Tôi đã lưu mã shell ở trên trong getIP.ps1.
Thật tuyệt