Я пытаюсь получить доступ к Dreamhost API для отправки почты.
API ожидает URL-адрес, содержащий домены и фактическое содержание электронной почты
domain = 'https://api.dreamhost.com/'
key = "dq86ds5qd4sq"
command = "announcement_list-post_announcement"
mailing = "mailing"
domain = "domain.nl"
listname = "mailing Adventure"<mailling@domain.nl>"
message = '<html>html here</html>'
url = domain + "&key=#{key}&cmd=#{command}&listname=#{mailing}&domain=#{domain}&listname=#{listname}&message=#{message}"
uri = URI.parse(url)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true if uri.scheme == "https" # enable SSL/TLS
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
http.start {
# http.request_get(uri.path) {|res|
# print res.body
# }
}
Когда я анализирую URL, я получаю сообщение об ошибке
плохой URI (не URI?)
URL содержит сам URL из списка и сообщения, и я предполагаю, что это вызывает проблему. Я понятия не имею, как это решить. CGI escpae была предложена, но это, кажется, преобразует пробел в +
Кто-то знает, как это решить?
Спасибо