- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在我的 Vala 应用程序中使用 libsoup 下载图像。但是我的程序总是因 SSL_FAILED 代码而崩溃(它不在程序中,这是我的错误)并且没有下载图像。我在我的应用程序中将 ssl_strict 切换为 false,但它没有按照我想要的方式工作。
这是我下载图片的函数:
var session = new Soup.Session ();
session.ssl_strict = false;
var message = new Soup.Message ("GET", url);
message.tls_errors = GLib.TlsCertificateFlags.VALIDATE_ALL;
session.send_message (message);
if (message.status_code != Soup.Status.OK)
error("Something wrong with downloading."); // here it crashes
我检查了文档,它说:“如果您将“ssl-strict”设置为 FALSE,那么所有证书都将被接受,您将需要调用 soup_message_get_https_status() 来区分有效证书和无效证书。(这可以是使用,例如,如果您想在发出某种警告后接受无效证书。)”。
我不知道收到的证书是否无效,但显然是的。而且文档只字不提如何使用它来接受无效的证书。那么问题来了:如何使用这个函数来接受所有(甚至是无效的)证书?
最佳答案
试试这个。 (未经测试的代码!)
var session = new Soup.Session ();
session.ssl_strict = false;
// drop this line
//message.tls_errors = GLib.TlsCertificateFlags.VALIDATE_ALL;
var message = new Soup.Message ("GET", url);
session.send_message (message);
// Now you can check the message.tls_errors property for why the
// certificate validation failed. E.g.:
if (message.tls_errors == TlsCertificateFlags.UNKNOWN_CA)
print ("Unknown CA\n");
关于ssl - 如何在 libsoup 中使用 HTTPS 接受所有证书(甚至无效)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27205532/
我正在使用 libsoup API 编写客户端。我做了以下事情。 session = soup_session_sync_new(); msg = soup_message_new("GET","h
我正在尝试为我的 ubuntu 环境安装 libsoup: checking for LIBSOUP... configure: error: Package requirements (libsou
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this qu
我想使用 libsoup 执行一个简单的 POST 请求。我想将数据发送到的网站的 api 只需要一个名为“内容”的字段。使用 curl 我这样做: curl -si -F 'content=myco
我在我的 Vala 应用程序中使用 libsoup 下载图像。但是我的程序总是因 SSL_FAILED 代码而崩溃(它不在程序中,这是我的错误)并且没有下载图像。我在我的应用程序中将 ssl_stri
我想使用 libSoup GLib 库向 https://httpbin.org/get 发出一个简单的 HTTP GET 请求,使用 python 中的 GObject-introspection
我想使用 libSoup GLib 库向 https://httpbin.org/get 发出一个简单的 HTTP GET 请求,使用 python 中的 GObject-introspection
当我编译我的程序时,我总是得到这个错误: fatal error: 'libsoup/soup.h' file not found 我正在使用的编译命令是: valac --pkg glib-2.0
我这样做时遇到了这个问题:sudo unlink/usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1,然后ubuntu系统似乎不正常,网络图标消失了,并且我点击了一些图
我是一名优秀的程序员,十分优秀!