当url包含特定关键字时,vb.net awesomium取消请求

时间:2014-02-03 07:51:40

标签: vb.net awesomium request-cancelling

我使用awesomium和vb.net作为我的Web应用程序的客户端应用程序。任何人都可以说我如何在网址包含特定关键字时取消请求。例如,如果我的网址包含视图,那么我需要取消请求并将pdf下载到本地计算机并使用客户端pdf查看器查看它。我已完成第二部分,但我不知道如何取消该请求。

使用vb.net本地webcontrol我有导航事件。但是在awesomium

中事件与此相当

下面是使用

的代码
Public Class ResourceInterceptor  Implements IResourceInterceptor
Public Function OnFilterNavigation(ByVal request As NavigationRequest) As Boolean Implements IResourceInterceptor.OnFilterNavigation
    If request.Url.ToString.Contains("ViewPdf") Then
        Path = ExtractPath(request.Url.ToString)
        openpdf(Path)
        Return False ' Cancel the request. 
    Else
        System.Diagnostics.Process.Start(request.Url.ToString)
        Return True
    End If
End Function

Public Function OnRequest(ByVal request As ResourceRequest) As ResourceResponse Implements IResourceInterceptor.OnRequest
    Return Nothing
End Function

End Class

任何人都可以说当网址包含指定文字时如何取消请求

1 个答案:

答案 0 :(得分:0)

实施Awesomium.Core.IResourceInterceptor界面,并使用WebCore.ResourceInterceptor = new ResourceInterceptor();

将其附加到您的网络核心会话

这是C#中的一个简单的ResourceInterceptor。

using System;
using System.IO;
using System.Reflection;
using Awesomium.Core;

namespace MyApp
{
    public class ResourceInterceptor : IResourceInterceptor
    {
        /// <summary>
        ///     Not used.
        /// </summary>
        public virtual ResourceResponse OnRequest(ResourceRequest request)
        {
             return null;
        }

        /// <summary>
        ///     Optionally blocks any web browser requests by returning true when the URL contains "/view/".
        /// </summary>
        public virtual bool OnFilterNavigation(NavigationRequest request)
        {
            return String.Contains(request.Url.AbsolutePath, "/ViewPdf/", StringComparison.InvariantCultureIgnoreCase);
        }
    }
}