5 votes

Pourquoi est-ce que j'obtiens l'erreur Net::HTTP "request path is empty" ?

J'utilise Net::HTTP pour effectuer une requête HTTP. Je reçois l'erreur "HTTP request path is empty", mais j'ai la forte impression que ce n'est pas le cas. Le code est le suivant :

REQUEST_IP = "localhost"
REQUEST_PORT = "8081"
REQUEST_PATH = "myweb/rest"

def customServiceMailAndMessageRequest user_id, message

  url = 'http://' + REQUEST_IP + ":" + REQUEST_PORT + "/" + REQUEST_PATH + '/users/' + user_id + '/messages/sendMailAndMessage?message=' + message
  uri = URI(url)

  request = Net::HTTP::Get.new(uri.path)
  request['Content-Type'] = 'application/json'
  request['Accept'] = 'application/json'

  response = Net::HTTP.new(uri.host,uri.port) do |http|
    http.request(request)
  end

  puts response

end

L'erreur est :

/usr/lib/ruby/1.8/net/http.rb:1478:in `initialize': HTTP request path is empty (ArgumentError)
    from /usr/lib/ruby/1.8/net/http.rb:1596:in `initialize'

Quelqu'un peut-il m'indiquer mon erreur ?

16voto

Sergio Points 153

J'ai reçu une erreur similaire lorsque je n'ai pas inclus une terminaison / . Dès que je l'ai fait, tout est allé bien.

D'après les informations que vous avez partagées, je ne peux que supposer que votre message La variable n'a pas ça.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X