我在 CentOS 6.5 中调用 wget 命令时遇到问题。我使用以下命令:
(由于我在这个论坛上的用户级别,我将 https 隔开了)
wget --certificate=/root/o2key.pemhttps://smsconnector.cz.o2.com/smsconnector/getpost/GP?action=send&baID=1992946&toNumber=%2b420733181177&text=Test&msgID=1&deliveryReport=TRUE&intruder=FALSE&multipart=FALSE&validityPeriod=10000&priority=1
系统返回此错误:
https://smsconnector.cz.o2.com/smsconnector/getpost/GP?action=send 正在解析 smsconnector.cz.o2.com... 160.218.160.234 连接到 smsconnector.cz.o2.com|160.218.160.234|:443... 已连接。HTTP 请求已发送,正在等待响应... 400 错误请求 2014-02-24 11:17:24 错误 400:错误请求。
[1] Exit 8 wget --certificate=o2key.pem https://smsconnector.cz.o2.com/smsconnector/getpost/GP?action=send
[2] Done baID=1992946
[3] Done toNumber=420733181177
[4] Done text=Test
[5] Done msgID=1
[6] Done deliveryReport=TRUE
[7] Done intruder=FALSE
[8]- Done multipart=FALSE
[9]+ Done validityPeriod=10000
当我在 Windows 中尝试相同的 url 时,它可以毫无问题地运行。
谢谢任何建议
答案1
您需要加引号。& 符号是特殊字符,URL 中许多其他有效符号也是特殊字符。务必加引号。
答案2
我想到了:
openssl pkcs12 -in 你的目录/givencert.p12 -out 你的目录/xyz.pem -nodes
打开时,证书会要求您输入密码,您也应该从证书发布者处收到该密码。此后,.pem 文件即可使用,不会出现任何错误。
curl --cert 你的目录/xyz.pem "https://lalala.com“