输入以下命令
curl -k email@mail.com:password https://www.example.com
Run Code Online (Sandbox Code Playgroud)
返回以下错误
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://mail.google.com/mail/">here</A>.
</BODY></HTML>
badauth
Run Code Online (Sandbox Code Playgroud)cacert.crt
从这里下载文件后
http://www.cacert.org/index.php?id=3
Run Code Online (Sandbox Code Playgroud)
然后将cacert.crt
文件重命名为cacert.pem
然后尝试:
curl --cacert /path/to/cacert.pem email@mail.com:password https://www.example.com
Run Code Online (Sandbox Code Playgroud)
但得到同样的错误。
然后尝试:
curl https://www.example.com
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
curl: (60) SSL 证书问题:无法获得本地颁发者证书 更多详情请点击:http : //curl.haxx.se/docs/sslcerts.html
curl 默认使用证书颁发机构 (CA) 公钥 (CA 证书) 的“捆绑”执行 SSL 证书验证。如果默认包文件不够用,您可以使用 --cacert 选项指定备用文件。
如果此 HTTPS 服务器使用由捆绑中表示的 CA 签署的证书,则证书验证可能因证书问题而失败(它可能已过期,或者名称可能与 URL 中的域名不匹配)。
如果您想关闭 curl 对证书的验证,请使用 -k(或 --insecure)选项
所以我试过 -k
curl -k https://www.example.com
Run Code Online (Sandbox Code Playgroud)
但当然得到错误
Badauth
我猜我的证书文件有问题,但我不知道从哪里获取证书文件,或者一旦我有了它怎么处理它。
我当然使用浏览器登录没有问题,但我想使用命令行自动执行此过程,以便我可以通过 WiFi 在我的 Android 平板电脑上使用 tasker 执行此操作。