0
При попытке запустить команду curl, преобразованную в Net :: HTTP в Rails, появляется следующая ошибка. Параметр url + дает мне ожидаемый ответ, когда я запускаю его на стороне клиента с помощью AJAX, но, конечно, это предоставляет мой ключ API.ошибка рельсов на curl, преобразованная в Net :: HTTP
Любая идея, почему эта ошибка возникает?
ошибка:
undefined method `empty?' for #<URI::HTTPS:0x00000006552fe8>
локон:
curl -X POST -d "maxRetrieve=1" -d "outputMode=json" -d "url=https://www.whitehouse.gov/the-press-office/2016/03/19/weekly-address-president-obamas-supreme-court-nomination" "https://gateway-a.watsonplatform.net/calls/url/URLGetRelations?apikey=ABC123"
рельсы код:
require 'net/http'
require 'uri'
require 'json'
url = "https://gateway-a.watsonplatform.net/calls/url/URLGetRelations?apikey=ABC123"
encoded_url = URI.encode(url)
uri = URI.parse(encoded_url)
request = Net::HTTP::Post.new(uri)
request.set_form_data(
"maxRetrieve" => "1",
"outputMode" => "json",
"url" => "https://www.whitehouse.gov/the-press-office/2016/03/19/weekly-address-president-obamas-supreme-court-nomination",
)
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
http.request(request)
end
puts response
Спасибо. Это была опечатка с моей стороны. Независимо от того, использую ли я: «request = Net :: HTTP :: Get.new (uri)» или «request = Net :: HTTP :: Post.new (uri)» Я получаю ту же ошибку. – JeffA
Спасибо. Вы определенно указали мне в правильном направлении. Обратите внимание, что мне пришлось переместить апики в арс, чтобы заставить его работать. – JeffA