webkit2gtk3实现跳过网页https认证(显示白屏)

1、https跳过ca认证        

       通过webkit2gtk3实现网页之后遇到一个问题,就是在显示https网页的时候由于ca证书的问题,在正常浏览器上会提示非安全的网站,然后仍然打开就ok了,但是在webkit2gtk3网页上去始终出现白屏的情况,找了半天终于找到了忽略ca错误的接口,

在load url之前写:

webkit_web_context_set_tls_errors_policy(context, WEBKIT_TLS_ERRORS_POLICY_IGNORE);

即可忽略ca错误正常显示网页。

2、添加cookie

    WebKitWebContext* context = webkit_web_view_get_context(WEBKIT_WEB_VIEW(webview));
    WebKitCookieManager* cookie = webkit_web_context_get_cookie_manager(context);
    
    SoupCookie soupCookit = {0};
    soupCookit.name = "token";
    soupCookit.path = "/";
    soupCookit.value = token;
    soupCookit.domain = host;
    webkit_cookie_manager_add_cookie(cookie,&soupCookit,NULL,NULL,NULL);

    SoupCookie webviewCookit = {0};
    webviewCookit.name = "x-webview";
    webviewCookit.path = "/";
    webviewCookit.value = "1";
    webviewCookit.domain = host;
    webkit_cookie_manager_add_cookie(cookie,&webviewCookit,NULL,NULL,NULL);

3、资源加载(接口调用)


static void _resource_load_started(WebKitWebView *web_view,WebKitWebResource *resource,WebKitURIRequest *request,gpointer priv){

    const char* p = webkit_uri_request_get_uri(request);
    //p即是页面上请求的资源路径,可针对不同的路径做出不同的页面响应操作(比如退出关闭页面)
}

g_signal_connect(WEBKIT_WEB_VIEW(webview),"resource_load_started",G_CALLBACK(_resource_load_started),window);

最后附上官网接口地址:

WebKit2 – 4.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值