Curl ofrece una serie de diferentes llamadas a métodos http que llevan como prefijo una X, pero también ofrece los mismos métodos sin ella. Intenté ambas cosas y parece que no puedo entender la diferencia. ¿Puede alguien explicarme rápidamente cómo difieren estas dos operaciones?curl -GET y -X GET
Respuesta
De forma predeterminada, utiliza curl sin decir explícitamente qué método de solicitud usar. Si solo ingresas una URL HTTP como curl http://example.com
, usará GET. Si usa -d
o -F
curl usará POST, -I
causará HEAD y -T
lo pondrá en PUT.
Si por alguna razón no está satisfecho con estas opciones predeterminadas que Curl hace por usted, puede anular esos métodos de solicitud especificando -X [WHATEVER]
. De esta manera, puede, por ejemplo, enviar un DELETE haciendo curl -X DELETE [URL]
.
No tiene sentido hacer curl -XGET [URL]
ya que GET se usaría de todos modos. En el mismo sentido, no tiene sentido hacer curl -X POST -d data [URL]...
Pero puede hacer una solicitud divertida y algo rara que envía un cuerpo de solicitud en una solicitud GET con algo como curl -X GET -d data [URL]
.
profunda búsqueda
curl -GET
(utilizando un único guión) es simplemente incorrecto para este propósito. Eso es lo mismo que especificar las opciones -G
, -E
y -T
y eso hará algo completamente diferente.
También hay una opción de curvatura llamada --get
para no confundir las cosas con ninguna de las dos. Es la forma larga de -G, que se usa para convertir datos especificados con -d
en una solicitud GET en lugar de una POST.
(I posteriormente usado mi propia respuesta aquí para rellenar el curl FAQ to cover this.)
Advertencias en 7.45.0 y más tarde
En las versiones modernas de rizo, se informará a los usuarios sobre este uso innecesario de -X cuando el modo detallado está habilitado (-v
) - para informar a los usuarios. Explicado y motivado adicionalmente en this blog post.
Quizás no sigo su pregunta, pero parece que existe la opción -G que simplemente indica a curl que use el método GET y luego está la opción -X que le permite hacer los métodos que usted desee. Entonces curl -G y curl -XGET serían lo mismo. No veo un -GET, parece que curl simplemente ignora cualquier cosa después de -G.
realidad "-get rizo" es igual a -E -G y -T. Todas las opciones de nombre largo para curl se utilizan con dos guiones, como en --url o --user. –
Sí, eso es correcto. Yo no fui pensado allí. – masebase
-x [el método]
x permiten sustituir el valor por defecto 'Get'
no, low-min-set el proxy para usar ... –
- 1. simplejson.loads() get Invalid \ escape: 'x'
- 2. Método GET y PHP
- 3. JavaScript get window Posición X/Y para scroll
- 4. Cómo pasar de POST a GET en PHP CURL
- 5. Haciendo https get con libcurl
- 6. JDBC get/setObject vs. get/setSpecificType
- 7. GET y POST en cakephp
- 8. PyTables lotes get y update
- 9. Parámetros JSP, GET y POST
- 10. Parámetros Slim PHP y GET
- 11. C# get y set taquigrafía
- 12. ¿Enlazar modelo y solicitudes GET?
- 13. CakePHP, GET Parámetros y enrutamiento
- 14. is_int y GET o POST
- 15. diferencia entre $ .getJSON y $ .get
- 16. Diferencia entre $ .getScript() y $ .get()
- 17. ¿Hay alguna diferencia entre readonly y {get; }
- 18. Curl y wget: ¿por qué no se usa el parámetro GET?
- 19. Reflection - get property name
- 20. Diferencia entre $ .ajax() y $ .get() y $ .load()
- 21. $ .get - Origen no permitido
- 22. Get Java Printer GraphicsDevice
- 23. HTTPBuilder establece requestBody en el método GET
- 24. estancamientos Python multiprocessing.Queue en PUT y GET
- 25. jQuery get textarea text
- 26. jquery $ .post() vs $ .get()
- 27. Uploadify solicitud GET extraña
- 28. jQuery: eq() vs get()
- 29. Unity GET/POST Wrapper
- 30. ListView get scroll position?
-XGET puede ser no operativa, pero lo hace explícito. – mtyson
"De forma predeterminada, utiliza curl sin decir explícitamente qué método de solicitud usar. Si solo ingresa una URL HTTP como curl http://example.com, usará GET. Si usa -d o -F, curl usará POST , "Causaré una CABEZA y -T lo haré PUT". Todo lo que necesitas saber. – Donato