@stayHARD

Как сохранить response POST request?

Здравствуйте.
В чем суть?
Суть в том, что я заполняю форму на сайте(поисковая форма), затем передаю её данные POST запросом (используя ajax/jQuery). Получаю response (в случае успеха), он представляет собой ID поискового запроса, дальше мне нужно этот response(ID) засунуть в GET запрос и получить уже сам результат.
Мой POST:
<script type="text/javascript">
	var api_host = '';
	$(function() {
		$('.sendButton').click(function() {
			$.ajax({
				url: api_host+'/api/search',
				data: $('form').serialize(),
				type: 'POST',
				success: function(response) {
					console.log(response);
				},
				error: function(error) {
					console.log(error);
				}
			});
		});
	});
</script>

Мой GET:
<script type="text/javascript">
	var api_host = '';
	$(function() {
		$.ajax({
			data: '',  // id search result
			url: api_host+'/api/result',
			type: 'GET',
			success: function(response) {
				console.log(response);
				console.log("Everything finished, no errors");
			},
			error: function(jqXHR, textStatus, errorThrown) {
				if (jqXHR.status == 401) {
					console.log("Error 401");
				}
				if (jqXHR.status == 404) {
					console.log("Not finished");
				}
			}
		});
	});	
</script>

Каким образом я могу сохранить его и использовать в другом месте?
  • Вопрос задан
  • 992 просмотра
Решения вопроса 1
dizballanze
@dizballanze
Software developer at Yandex
Как-то так:

var api_host = '';
  $(function() {
    function get_search_results(query_id) {
      $.ajax({
        data: '',  // id search result
        url: api_host+'/api/result',
        type: 'GET',
        success: function(response) {
          console.log(response);
          console.log("Everything finished, no errors");
        },
        error: function(jqXHR, textStatus, errorThrown) {
          if (jqXHR.status == 401) {
            console.log("Error 401");
          }
          if (jqXHR.status == 404) {
            console.log("Not finished");
          }
        }
      });
    };


    $('.sendButton').click(function() {
      $.ajax({
        url: api_host+'/api/search',
        data: $('form').serialize(),
        type: 'POST',
        success: function(response) {
          get_search_results(response); // или response['id'], зависит от формата ответа
        },
        error: function(error) {
          console.log(error);
        }
      });
    });
  });
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
24 нояб. 2024, в 14:37
3000 руб./в час
24 нояб. 2024, в 13:04
500 руб./в час
24 нояб. 2024, в 12:29
3000 руб./за проект