У меня есть данные, хранящиеся на SSH-сервере, и я хочу запрашивать и получать данные через HTTP POST и GET-запросы. я пытался сделать это, используя простой URL-адрес http://127.0.0.1:9200/_search? но это дает мне пустой ответ. Как правильно отправлять запросы через ssh сервер через http? моя функция http post выглядит примерно так:

function spatialsearch(coordinates_selected) {
  var coords = coordinates_selected.geometry.coordinates;
  console.log('c',JSON.stringify(coordinates_selected.geometry.coordinates));
  var _url = 'http://127.0.0.1:9200/_search?';

  var b = {
    "query": {
      "bool": {
        "must": {
          "match_all": {}
        },
        "filter": {
          "geo_shape": {
            "metadata.o2r.spatial.geometry": {
              "shape": {
                "type": "polygon",
                "coordinates":
                coords

                /* [
                //     [-22.0, 76.0],
                //     [-27.0, 65.0],
                //     [-57.0, 65.0],
                //     [-59.0, 76.0],
                //     [-22.0, 76.0]
                ]*/

              },
              "relation": "within"
            }}}}}
  };

  console.log(b,'http sending request');
  return $http.post(_url,b);
}

я пробовал SSH туннелирование, используя ssh -L9201:sshserver:9200 r_chau02 @ sshserver, но я все еще не получаю никакого ответа.

обновить я обновил порт в моем коде до 9201, но результат все тот же. Ошибка в консоли: net:: ERR_EMPTY_RESPONSE, в то время как терминал генерирует канал 3: открытие не удалось: подключение не удалось: соединение отказано.

1 ответ1

0

Вы смотрите в правильном направлении, с незначительной ошибкой. HTTP-запрос и порт переадресации не совпадают (9200 и 9201).

Вы можете либо обновить свой код для запроса на порт 9201, либо изменить туннель ssh на:

ssh -L9201:127.0.0.1:9200 r_chau02@sshserver

Это сделает ES доступным на localhost:9200 (при условии, что на сервере включено туннелирование, а ES прослушивает адрес sshserver).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .