我从这个post了解到,我可以将实体代码用于像@ = %40
这样的字符
& = %26
但我找不到如何加入%
。
例如,我想执行以下命令,但由于%
而导致错误。有没有办法逃脱它?
curl -d 'name=foo&description=bar has a 25% discount' http://localhost:3000/api/v1/products
答案 0 :(得分:1)
% = %25
此工具有助于发现如何对其进行编码:http://meyerweb.com/eric/tools/dencoder/在JavaScript中执行以下操作:
function encode() {
var obj = document.getElementById('dencoder');
var unencoded = obj.value;
obj.value = encodeURIComponent(unencoded).replace(/'/g,"%27").replace(/"/g,"%22");
}
答案 1 :(得分:1)
编码的任何内容都应为%[其字节值的两位十六进制],这使得'%'编码为%25。
curl还具有命令行选项--data-urlencode来帮助解决这个问题。