C# 更改webkit sharp for mono上的代理设置
我对Mono开发非常陌生,一直在尝试创建一个小应用程序(没有工具栏,没有url输入字段),它可以打开一个固定的url并向用户显示页面,我通过在internet上遵循一些教程(我在这个网站上找到的基本思想:)就可以实现这一点C# 更改webkit sharp for mono上的代理设置,c#,proxy,mono,webkit,browser,C#,Proxy,Mono,Webkit,Browser,我对Mono开发非常陌生,一直在尝试创建一个小应用程序(没有工具栏,没有url输入字段),它可以打开一个固定的url并向用户显示页面,我通过在internet上遵循一些教程(我在这个网站上找到的基本思想:)就可以实现这一点 现在我想知道是否有办法为这个组件(webkit sharp的webview)设置代理设置,我一直在挖掘它的API并搜索文档,到目前为止运气不好,如果有任何帮助,我将不胜感激 显然,托管包装器没有公开此功能。以下快速破解应该足以让您开始: public class SoupSe
现在我想知道是否有办法为这个组件(webkit sharp的webview)设置代理设置,我一直在挖掘它的API并搜索文档,到目前为止运气不好,如果有任何帮助,我将不胜感激 显然,托管包装器没有公开此功能。以下快速破解应该足以让您开始:
public class SoupSession
{
[DllImport("webkit-1.0")]
static extern IntPtr webkit_get_default_session();
[DllImport("soup-2.4")]
static extern IntPtr soup_uri_new(string uri);
[DllImport("gobject-2.0")]
static extern void g_object_set(IntPtr obj, string name, IntPtr value, IntPtr zero);
public static void SetProxy(string uri)
{
IntPtr session = webkit_get_default_session();
g_object_set(session, "proxy-uri", soup_uri_new(uri), IntPtr.Zero);
}
}
注意,为了简洁起见,我省略了utf-8转换。如果需要,可以将其转换为适当的包装器类