Доброе время суток, Господа!
Подскажите пожалуйста, мне нужно программно авторизироваться на сайте эквайер, для того чтобы скачать файл в формате CSV
Авторизацию проходит успешно, так же выдает ответы сервера если например неправильно ввели пароль - Code = {"status":"WRONG_PASS"}
Теперь необходима проверка на то что мы оказались на странице /admin.html
Если - true - скачать файл:
https://service.rro.ukrcard.com.ua/serv/rro/getRro...require 'uri'
require 'net/https'
require "json"
uri = URI("https://service.rro.ukrcard.com.ua/serv/auth/login.data")
https = Net::HTTP.new(uri.host, uri.port)
https.use_ssl = true
response, data = https.post(uri.path, nil)
cookie = response.response['set-cookie']
headers = {
'Cookie' => cookie,
'Referer' => 'myRuby',
'Content-Type' => 'application/x-www-form-urlencoded'
}
data = ('login=' + login + '&password=' + password)
response, data = https.post(uri.path, data, headers)
response.each {|key, val| puts key + ' = ' + val}
puts '-------------------------------------------------------------------------------------------------------------'
puts 'Code = ' + response.body
puts '-----------------------------------------'
puts 'Message = ' + response.message
puts '-----------------------------------------'
puts "Cookie \n" + cookie
puts response.class.name
puts "--------------------------------------------------------------------Auth complete----------------------------"
https.open_timeout = 10
https.read_timeout = 10
uri_new = URI.parse("https://service.rro.ukrcard.com.ua/serv/rro/getRroData.data?format=csv")
p uri_new.scheme # => "https"
p uri_new.host # => "service.rro.ukrcard.com.ua"
p uri_new.port # => 443
p uri_new.request_uri # => "/serv/rro/getRroData.data?format=csv"
p uri_new.path # => "/serv/rro/getRroData.data"
p uri_new.query # => "format=csv"
p uri_new.to_s
Заранее благодарен!