Java - используйте java.net.Socket для подключения сервера с несколькими конечными точками - PullRequest
0 голосов
/ 01 июня 2018

Может быть, я упускаю что-то очень простое.Но после выполнения множественного поиска я не могу найти решение для моего сценария.

У меня есть локальный веб-сервер python, работающий на моем локальном хосте с несколькими конечными точками.(не написано мной).Я пытаюсь взаимодействовать (получать и публиковать некоторые данные) с сервером, используя java.

Пример, который я видел в программировании сокетов Python-сервера Java-клиента или в Отправка файла сКлиент Python Server to Java , использующий InetAddress и номер порта для подключения к серверу.Но я хочу создать отдельные соединения для разных конечных точек - например: localhost: 8080 / endpoint1 или localhost: 8080 / endpoint2

Есть ли способ указатьконечная точка в java.net.Socket при установлении соединения?Или я должен использовать другой API?

Пример, показанный в http://www.programmingforliving.com/2013/08/jsr-356-java-api-for-websocket-client-api.html, использует полный URI для подключения, но здесь код сервера аннотирован, чтобы заставить его работать.Я не могу изменить свой код Python Server.

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 02 июня 2018

Используйте клиентскую библиотеку http, например, из apache.

https://hc.apache.org/httpcomponents-client-4.3.x/quickstart.html

HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet("http://server:8080/endpoint1");
HttpResponse response = client.execute(request);
response.getEntity()
...

Не обрабатывайте это с помощью сокета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...