2012-10-04 22 views
42

que estoy tratando de hacer una solicitud a través de CURL así:elimine usando CURL con URL codificada

curl -X DELETE "https://myhost/context/path/users/OXYugGKg207g5uN/07V" 

donde OXYugGKg207g5uN/07V es un hash, así que supongo que necesito para codificar antes de hacer esta solicitud.

He tratado curl -X DELETE --data-urlenconded "https://myhost/context/path/users/OXYugGKg207g5uN/07V"

Algunas ideas?

+2

¿El servidor está recibiendo solicitudes? Parece que estás URL codificando toda la URL ... lo que crearía una URL inutilizable. – shortstuffsushi

+0

¿Realmente intentaste '--data-urlenconded'? Deletrear esto correctamente podría ayudarte. – TRiG

Respuesta

10

Si realmente OXYugGKg207g5uN/07V es el hash, entonces necesita codificar esa, no toda la URL. Puede utilizar una función de codificación disponibles dentro del entorno utiliza cURL en.

+0

Im en secuencia de comandos bash. ¿Tienes algún ejemplo? – coffee

+0

http://stackoverflow.com/questions/296536/urlencode-from-a-bash-script – arkascha

13

probar este

curl -X DELETE "https://myhost/context/path/users/$(echo -ne "OXYugGKg207g5uN/07V" | xxd -plain | tr -d '\n' | sed 's/\(..\)/%\1/g')" 

Es equivilent a

curl -X DELETE "https://myhost/context/path/users/%4f%58%59%75%67%47%4b%67%32%30%37%67%35%75%4e%2f%30%37%56" 

Aquí, cada carácter se reemplaza por su respresentation bytes. .. No creo que sea particularmente bonito, pero funciona.

Cuestiones relacionadas