在这里插入图片描述
错误代码:

curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

好多网站上给的解决办法是下载CA证书,但是使用C++代码调用libcurl发送https请求,只需要在设置一下这个就可以关闭ssl验证,从而能够发送https请求

curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, false);

因此使用curl命令行肯定也可以通过设置跳过ssl验证,我们打开命令行错误提示的那个网页:https://curl.haxx.se/docs/sslcerts.html

在这里插入图片描述
从这里可以找到在命令行中使用curl发送https请求的解决办法,带上这个参数:-k --insecure

curl -k --insecure "https://www.baidu.com"

可以发现能够成功访问http请求了:

当我们使用curl发送https请求时,如下命令就会报错:curl "https://www.baidu.com"错误代码:curl: (60) SSL certificate problem: unable to get local issuer certificateMore details here: https://curl.haxx.se/docs/sslcerts.html好多网站上给的解决办法是下载CA证书,但是使用C++代码调用libcurl发送https请求,只需要在设置
若服务端要求客户端认证,需要将pfx证书转换成pem格式 openssl pkcs12 -clcerts -nokeys -in cert.pfx -out client.pem    #客户端个人证书的公钥   openssl pkcs12 -nocerts -nodes -in cert.pfx -out key.pem #客户端个人证书的私钥 也可以转换为公钥与私钥合二为一
在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。然而在使用crul下载https方式的文件时报错: CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath: none NSS error 在访问https方式的URL时,一般需要证书才能访问,我们可以使用curl一些参数可以忽略证书,这样就避免了一些不必要的麻烦,命令如下:
Curl是一个命令行工具,用于向服务器发送请求并接收响应。它支持多种协议,包括HTTP、HTTPS、FTP、SCP、SFTP等。Curl可以在终端中使用,通过命令行发送HTTP请求,获取响应并将其输出到终端。它可以用于测试API、下载文件、上传文件、发送HTTP基本认证、发送cookie数据、设置请求头等多种用途。Curl支持各种请求方法,包括GET、POST、PUT、DELETE等。它还支持设置请求头、发送表单数据、上传文件、自动跟随重定向、跳过SSL证书验证等功能。Curl的语法简单易懂,可以快速学习和上手。由于Curl是开源的,因此可以在各种操作系统上使用。它是一个非常有用的工具,可以帮助开发人员和系统管理员快速调试和测试各种Web应用程序。
在调试一块设备连接业务平台是发现报错: * SSLv3, TLS handshake, Client hello (1): * SSLv3, TLS handshake, Server hello (2): * SSLv3, TLS handshake, CERT (11): * SSLv3, TLS alert, Server hello (2): * SSL certificate probl...
$url = 'https://www.jb51.net'; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 1)... 提交数据到https时,需要pem证书来加密。 我们使用浏览器访问https的时候,浏览器会自动加载网站的安全证书进行加密。但是你用curl请求https时,没有通过浏览器,就只有自己手动增加一个安全证书进行加密。 代码示例: 1、不验证证书和host curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); 2、设定一个正确的证书。 下载新的ssl 本地判别文件http://curl.haxx.se/ca/cacert.pe...
curl_setopt — 设置 cURL 传输选项 curl_setopt(resource $ch, int $option, mixed $value): bool -为 cURL 会话句柄设置选项。 handle - 由 curl_init() 返回的 cURL 句柄。 option - 需要设置的CURLOPT_XXX选项。 value - 将设置在option选项上的值。 返回值 - 成功时返回 true, 或者在失败时返回 false 以下 option 参数的 value应该被设置成
其中,'-X'选项指定请求的方法为POST,'-d'选项指定请求体的内容,'URL'是需要请求的地址。 3. 根据需要修改参数和URL,发送POST请求。完成后,服务器将返回响应。 例如,如果要向URL为https://example.com的服务器发送名为"username"和"password"的参数,可以使用以下命令: curl -X POST -d 'username=admin&password=123456' 'https://example.com' 这将向服务器发送一个名为"admin"和密码为"123456"的POST请求,并返回服务器的响应。