为了账号安全,请及时绑定邮箱和手机立即绑定

如何为curl命令urlencode数据?

如何为curl命令urlencode数据?

慕尼黑8549860 2019-08-09 14:21:53
如何为curl命令urlencode数据?我正在尝试编写一个用于测试的bash脚本,它接受一个参数并通过curl将其发送到网站。我需要对值进行url编码,以确保正确处理特殊字符。做这个的最好方式是什么?这是我到目前为止的基本脚本:#!/bin/bashhost=${1:?'bad host'}value=$2 shift shift curl -v -d "param=${value}" http://${host}/somepath $@
查看完整描述

3 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

在bash脚本的第二行使用Perl的URI::Escape模块和uri_escape函数:

...value="$(perl -MURI::Escape -e 'print uri_escape($ARGV[0]);' "$2")"...

编辑:修复引用问题,如Chris Johnsen在评论中所建议的那样。谢谢!


查看完整回答
反对 回复 2019-08-09
  • 3 回答
  • 0 关注
  • 2725 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信