Ruby Happarty Получить URL-адрес ответа или ID после сообщения

StackOverflow https://stackoverflow.com/questions/3545401

  •  30-09-2019
  •  | 
  •  

Вопрос

Как я могу получить URL-адрес отклика или ID из проекта Rails с httparty в отдельном скрипте после выполнения поста?

Script:

  HTTParty.post('http://localhost:3000/change_logs', parameters)

ответ. и все остальные не показывают URL и идентификатор ответа

Это было полезно?

Решение 3

Это работает для меня, вероятно, лучший способ сделать это, хотя ..

get_change_log_id = HTTParty.post('http://localhost:3000/change_logs.xml', parameters).to_a

get_change_log_id.each do |r|
  r.each do |sub|
    sub2 = sub.to_a
      sub2.each do |s|
        if s.index "id"
          @change_log_id = s.to_s.sub(/[i]/, '').sub(/[d]/, '')
        end
      end
  end
end

Другие советы

Два года спустя я нашел способ получить доступ к последнему URI из request атрибут на то response:

url      = "http://example.com/redirects/to/www"
response = HTTParty.get(url)
response.request.last_uri.to_s
# => "http://www.example.com"

К сожалению, эта информация не хранится от httparty. Когда он сталкивается с перенаправленным, он будет следовать за перенаправленным и возвращать результат этого запроса. Он не сохранит никакой информации из исходного запроса.

Хорошая новость, поведение, как это (обычно) предсказуемо. Веб-приложения, как правило, перенаправляются на одни и те же вещи после запроса на почту к URL.

Но если вы действительно хотите сделать это, вам придется использовать библиотеку NET / HTTP, которая поставляется с Ruby. Это не намного сложнее, чем httparty, поэтому это не намного больше работы.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top