Hướng dẫn python socket recv hangs - python socket recv bị treo
I have implemented a socket server and client using python. Idea is to simply send an image from client to server and get back a text message from the server. The client will select an image file (.jpg) from file system and send to server. The server would receive it and save it with a different name (current date time stamp) and send back a processed text message. The image is sent and saved successfully at the server side but the issue is that client hangs when Following is the code Server
Client Đã đăng vào thg 2 18, 2021 6:26 SA 4 phút đọc 4 phút đọc Socket là giao diện lập trình ứng dụng mạng được dùng để truyền và nhận dữ liệu trên internet. Giữa hai chương trình chạy trên mạng cần có một liên kết giao tiếp hai chiều (two-way communication) để kết nối 2 process trò chuyện với nhau. Điểm cuối (endpoint) của liên kết này được gọi là socket. Một chức năng khác của socket là giúp các tầng TCP hoặc TCP Layer định danh ứng dụng mà dữ liệu sẽ được gửi tới thông qua sự ràng buộc với một cổng port (thể hiện là một con số cụ thể), từ đó tiến hành kết nối giữa client và server. Mô tả mô hình
Bây giờ chúng ta thực hành lập trình socket bằng module socket trong python. Tạo serverChúng ta sẽ tạo một DCP IP server nhằm nhiệm vụ lắng nghe trên một cổng cho client gửi request đến. Các bước để tạo lên 1 chương trình phía server:
Tạo clientChúng ta sẽ tạo một DCP IP client để kết nối với server ở cổng 4000.
Sau khi chỉ chạy server.py rồi chạy client.py thì ta thấy client đã nhận được dữ liệu do server gửi tới. Gửi fileChỉnh sửa nội dùng 2 file trên một chút thì chúng ta có thể thực hiện chức năng server gửi nội dung file mà client yêu cầu tới. Phía server Server sẽ gửi nội dung một file mà client yêu cầu.
Phía client Nhập vào tên file muốn lấy dữ liệu
Đây là kết quả nhận được từ server.
Trên đây là những ví dụ đơn giản về lập trình socket trong python mà mình tìm hiểu được ^.^ All rights reserved |