DELETE using CURL with encoded URL

2019-03-14 05:46发布

I’m trying to make a request using CURL like this:

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

where OXYugGKg207g5uN/07V is a hash, so I suppose that I need to encode before do this request.

I have tried curl -X DELETE --data-urlenconded "https://myhost/context/path/users/OXYugGKg207g5uN/07V"

Some ideas?

2条回答
\"骚年 ilove
2楼-- · 2019-03-14 06:17

Try this

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

It is equivilent to

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"

Here, every character is replaced by its byte respresentation... I don't think it is particularly pretty, but it works.

查看更多
兄弟一词,经得起流年.
3楼-- · 2019-03-14 06:22

If really OXYugGKg207g5uN/07V is the hash then you need to encode that, not the whole url. You can use an encoding function available inside the environment you use cURL in.

查看更多
登录 后发表回答