捕獲和轉換Web的工具

使用ASP.NET的處理程序ASP.NET API

產品描述

在調試處理程序時遇到問題嗎? 嘗試 回調處理程序測試工具。

此處描述的處理程序處理來自GrabzIt屏幕快照Web服務的回調。 該處理程序的URL在以下位置傳遞給GrabzIt: callBackURL 的參數 Save 方法。 但是,僅當可通過Internet訪問處理程序時,此技術才有效。

以下參數作為GET參數傳遞給處理程序。

  • id-屏幕截圖的唯一標識符,由 GetResult 方法
  • filename-屏幕快照的文件名,通過將屏幕快照的唯一標識符與其文件擴展名結合起來自動創建
  • 消息-由於處理屏幕截圖期間導致的錯誤而導致的任何消息
  • customId-任何 自訂編號 通過以下方式傳遞給GrabzIt Web服務 Save 方法
  • 格式-屏幕截圖的格式,例如“ bmp8”,“ bmp16”,“ bmp24”,“ bmp”,“ csv”,“ gif”,“ jpg”,“ json”,“ pdf”,“ png”,“ tiff”,“ webp”或“ xlsx”
  • targeterror-如果返回1,則由於捕獲目標導致的問題,捕獲中包含一般錯誤

如果要阻止對處理程序的所有訪問,除了GrabzIt之外,請使用此方法 安全技術.

使用MVC實現回調處理程序

請記住,如果您的應用程序位於localhost上,則回調將不起作用。

要將處理程序添加到MVC項目中,只需在控制器中定義具有以下簽名的方法即可,如的SampleMVC項目所示。 ASP.NET演示.

然後將此方法的URL傳遞給GrabzIt,因此,如果它在Home控制器中,則回調URL可能類似於: http://www.example.com/Home/Handler

public ActionResult Handler(string filename, string id, string message, string customId, string format, int targeterror)
{
    GrabzItClient grabzItClient = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
    GrabzItFile file = grabzItClient.GetResult(id);
    file.Save(Server.MapPath("~/results/" + filename));

    return null;
}

使用Web窗體實現回調處理程序

實現回調處理程序的最簡單方法是創建一個通用處理程序並從中繼承 GrabzIt.Handler 類,如下所示,然後實施 Process 方法。 此方法捕獲從GrabzIt服務傳遞給它的五個參數,包括捕獲到該捕獲對象的唯一ID。 GetResult 方法。

然後,此方法返回捕獲,即 saved在結果目錄中。 但是如果 null 值是從返回 GetResult 方法,這表明發生了錯誤。

public class OverridenHandler : GrabzIt.Handler
{
    protected override void Process(HttpContext context, string filename, string id, string message,
        string customId, string format, bool targetError)
    {
        GrabzItClient grabzIt = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
        GrabzItFile file = grabzIt.GetResult(id);
        file.Save(context.Server.MapPath("~/results/" + filename));
    }
}

其他技術

儘管上述技術使用了通用處理程序,但您可以輕鬆地使用ASPX頁面接收回調並下載捕獲。 為此,只需創建自己的ASPX頁面等,然後閱讀 詢問string 上面提到的參數。 最有用的參數是id參數,可與 GetResult 下載捕獲的方法。