首页 > 解决方案 > 如何在 HTTP.jl 中格式化请求以包含证书文件

问题描述

我想知道在HTTP.jl中发送请求时如何包含证书文件。

在 Python 中,使用Requests它看起来像这样,

   requests.get(url, params=payload, verify=cert_file)

该文档提到了 SSL 证书,但不清楚。

标签: httpjulia

解决方案


它的文档确实很差,在类似的情况下,我不得不查看 MbedTLS 的源代码(在站点https://tls.mbed.org/内),这就是包 HTTP.jl 要求证书的内容。

MbedTLS 依次查找系统安装的证书,因此如果您为用户安装证书,HTTP.jl 应将其用于 https。我意识到这可能无助于您的特定需求,这可能需要这样的东西(未经测试):

using HTTP, MbedTLS

conf = MbedTLS.SSLConfig(cert_file, key_file)
resp = HTTP.get("https://httpbin.org/ip", sslconfig=conf)

println(resp)

本身。

如果您必须像我一样返回 MbedTLS 源,我建议您查看 https://github.com/JuliaLang/MbedTLS.jl 的示例和https://github.com/JuliaLang/MbedTLS.jl/blob/master/src/MbedTLS.jl,尤其是第 103 行的函数 SSLConfig(cert_file, key_file)。


推荐阅读