Tôi đang cố gắng bật tính năng khám phá dịch vụ trong ứng dụng máy khách-khách của mình bằng cách sử dụng JmDNS. Tôi hoàn toàn hiểu đăng ký dịch vụ trên phía máy chủ, với mã giống như thế này:Phát hiện dịch vụ JmDNS trong máy khách-máy chủ
JmDNS jmdns = JmDNS.create(localhost);
jmdns.register(serviceInfo);
Tuy nhiên, tôi đang gặp khó khăn để tìm hiểu làm thế nào để có khách hàng của tôi lấy số cổng và địa chỉ IP từ dịch vụ đã đăng ký và sử dụng dữ liệu này để mở kết nối TCP. Tôi đã tìm kiếm các ví dụ về cách sử dụng JmDNS nhưng không có kết quả. Bất cứ ai ở đây có thể cho tôi một số ví dụ cơ bản không? Hoặc nếu bất cứ ai có bất kỳ liên kết đến các nguồn lực/hướng dẫn tốt trên JmDNS họ có thể vui lòng cung cấp cho họ?
Lưu ý: JmDNS là một sự cần thiết ở đây, vì vậy tôi sẽ đánh giá cao các câu trả lời chỉ liên quan đến JmDNS và không cung cấp giải pháp thay thế. Ngoài ra, tôi đã xem xét API JmDNS rộng rãi, và vẫn không thể tìm ra được, vì vậy vui lòng không đăng liên kết tới tài liệu dưới dạng tài nguyên.
Cảm ơn.
Cảm ơn, điều này thực sự làm cho mọi thứ rõ ràng hơn rất nhiều đối với tôi. Hoàn toàn không quen thuộc với các cuộc gọi lại trong Java (hoặc bằng bất kỳ ngôn ngữ nào, cho vấn đề đó) làm cách nào để tôi truy xuất thông tin dịch vụ từ cuộc gọi ngược lại với ServiceInfo []? Có phải nó chỉ là vấn đề tuyên bố chuỗi serviceUrl bên ngoài triển khai serviceListener để tôi có thể truy cập nó trên toàn cầu không? –
Có, thường xác định ServiceListener như một lớp bên trong và định nghĩa serviceUrl như là một biến cá thể của lớp bên ngoài. – yorkw
@yorkw Bất kỳ cơ hội nào bạn có thể mở rộng mẫu mã cũng hiển thị cách phân tích cú pháp và mở ổ cắm? Tôi không thể tìm thấy mã kết nối ổ cắm phía máy khách thích hợp. – Radu