Как запросить API на основе ввода формы пользователя - PullRequest
2 голосов
/ 12 октября 2019

У меня есть приложение-нод, в котором я звоню в google place api и отправляю эти данные во внешний интерфейс. В интерфейсе у меня есть базовая форма, которая отправляет сообщения на мой сервер узлов. Я хочу вернуть данные из вызовов API на основе ввода формы пользователя.

Я могу опубликовать форму на сервере и вижу данные в объекте запроса, однако у меня возникают проблемы с выяснением того, как можноЯ использую эти данные для правильного запроса API на основе ввода формы?

Форма

 <form method="post" class="form" action="http://localhost:3005/dyno">
<fieldset class="form-fieldset ui-input __first">
  <input type="text" name="interests" id="username" tabindex="0" />
  <label for="intrests">
    <span data-text="Interests">Intrests</span>
  </label>
</fieldset>

<fieldset class="form-fieldset ui-input __second">
  <input type="text" name="location" id="email" tabindex="0" />
  <label for="location">
    <span data-text="Location">Location</span>
  </label>
</fieldset>

  <input type="submit" value="Submit" />
  </form>

Код на стороне сервера, который регистрирует необходимые мне данные

app.post('/dyno', function(request, response){

console.log(request.body.interests)
console.log(request.body.gender)

response.end()

});

Вызов API

 _EXTERNAL_URL = `https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=40.663918,-73.8820044&radius=2500&type=gyms&keyword=fitness&key=${KEY}`;

app.get('/ruckus',(req, res) => {
request(_EXTERNAL_URL, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) 
res.send(body) 
}
});
})

Как вернуть данные на основе параметров радиуса, типа и ключевого слова на основе данных формы, введенных пользователем?

1 Ответ

1 голос
/ 12 октября 2019

На стороне клиента

  • Запретить отправку формы по умолчанию.
  • Сформируйте тело или запрос с помощью ввода формы.
  • Сделать запрос на получение "http://localhost:3005/dyno"
  • Визуализация полученного ответа на этот запрос.

На стороне сервера

  • Youсоздать конечную точку с именем '/ dyno'
  • Получить параметры тела / запроса из запроса
  • Сформировать URL для отправки запроса в Google Places API
  • Выполнить запрос и вернутьответ клиенту
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...