it-swarm.com.de

LÖSCHEN mit CURL mit verschlüsselter URL

Ich versuche, eine Anfrage mit CURL wie folgt zu stellen:

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

woher OXYugGKg207g5uN/07V ist ein Hash, ich nehme also an, dass ich vor der Ausführung dieser Anfrage eine Codierung durchführen muss.

Ich habe versucht curl -X DELETE --data-urlenconded "https://myhost/context/path/users/OXYugGKg207g5uN/07V"

Einige Ideen?

50
coffee

Wenn wirklich OXYugGKg207g5uN/07V ist der Hash, dann müssen Sie das codieren, nicht die gesamte URL. Sie können eine Codierungsfunktion verwenden, die in der Umgebung verfügbar ist, in der Sie cURL verwenden.

11
arkascha

Versuche dies

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

Es ist äquivalent zu

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"

Hier wird jedes Zeichen durch seine Bytedarstellung ersetzt ... Ich finde es nicht besonders hübsch, aber es funktioniert.

16
knugie