(ruby) ruby ??sockets: ¿cómo crear una solicitud POST?
-
05-07-2019 - |
Pregunta
¿Cómo se crea una solicitud POST utilizando TCPSocket en Ruby? ¿Hay un formato especial para hacer una publicación? Tengo lo siguiente pero recibo un error de análisis (es para un servidor de rieles):
require 'socket'
s = TCPSocket.open("localhost", 3000)
s.puts("POST /<controller>/<action> HTTP/1.1")
s.puts("Host: localhost:3000")
s.puts("Content-Type: application/x-www-form-urlencoded")
s.puts("Content-Length: 103\r\n\r\n")
Solución
El campo Host:
no debería incluir el número de puerto.
Otros consejos
Encontré este artículo que puede ser de alguna utilidad para usted. Me gusta especialmente el comentario de Eric Hodel sobre cómo hacerlo con Net :: HTTP. Sé que especificó que quería hacer TCPSocket.send (presumiblemente porque está trabajando en algo un poco más interesante que solo enviar POST), pero si no está haciendo algo más complicado, puede usar Net :: HTTP y regocíjate de lo fácil que es.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow