usar usa tutorial que para instalar index funciona elastic crear como comandos web-services curl

web-services - tutorial - para que se usa elastic search



Cómo probar el servicio web usando curl de línea de comando (3)

Estoy construyendo un servicio web para una aplicación web, y me gustaría una herramienta simple para probar esto mientras desarrollo. He probado algunos complementos de Firefox (Poster, ''REST Client''), y aunque funcionan bien, no he podido subir archivos con ellos.

Además, prefiero tener una herramienta de línea de comandos que pueda usar para escribir fácilmente un conjunto de pruebas de integración para este servicio web y que pueda enviar a los consumidores de este servicio web como ejemplo.

Sé que curl puede funcionar para esto, pero me gustaría tener algunos ejemplos, especialmente sobre la autenticación (usando HTTP Basic) y la carga de archivos.


Respondiendo mi propia pregunta.

curl -X GET --basic --user username:password / https://www.example.com/mobile/resource curl -X DELETE --basic --user username:password / https://www.example.com/mobile/resource curl -X PUT --basic --user username:password -d ''param1_name=param1_value'' / -d ''param2_name=param2_value'' https://www.example.com/mobile/resource

POSTING un archivo y un parámetro adicional

curl -X POST -F ''param_name=@/filepath/filename'' / -F ''extra_param_name=extra_param_value'' --basic --user username:password / https://www.example.com/mobile/resource


Además de las respuestas existentes, a menudo se desea formatear la salida REST (generalmente JSON y XML carece de sangría). Prueba esto:

$ curl https://api.twitter.com/1/help/configuration.xml | xmllint --format - $ curl https://api.twitter.com/1/help/configuration.json | python -mjson.tool

Probado en Ubuntu 11.0.4 / 11.10.

Otro problema es el tipo de contenido deseado. Twitter usa la extensión .xml / .json , pero un RESTO más idiomático requeriría el encabezado Accept :

$ curl -H "Accept: application/json"


De la documentación en http://curl.haxx.se/docs/httpscripting.html :

Autenticación HTTP

curl --user name:password http://www.example.com

Coloque un archivo en un servidor HTTP con curl:

curl --upload-file uploadfile http://www.example.com/receive.cgi

Enviar datos de publicación con curl:

curl --data "birthyear=1905&press=%20OK%20" http://www.example.com/when.cgi