捕获和转换Web的工具

Perl的GrabzIt处理程序Perl 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”,“ webp”,“ tiff”或“ xlsx”
  • targeterror-如果返回1,则由于捕获目标导致的问题,捕获中包含一般错误

如果要阻止对处理程序的所有访问,除了GrabzIt之外,请使用此方法 安全技术.

案例

请记住,如果您的应用程序位于localhost上,则此回调将不起作用。

本示例说明如何实现GrabzIt Perl处理程序。 这会捕获从GrabzIt服务传递给它的五个参数,包括传递给 GetResult 方法。

然后,此方法返回屏幕截图,即 saved在结果目录中。 但是如果 null 值是从返回 GetResult 方法,这表明发生了错误。

use CGI;
use CGI::Carp qw(warningsToBrowser fatalsToBrowser); 
use File::Spec;
use GrabzIt::GrabzItClient;

# This Perl file handles the GrabzIt callback

print "HTTP/1.0 200 OK";
print "Content-type: text/html\r\n\r\n";

$cgi = new CGI;

$message = $cgi->param("message");
$customId = $cgi->param("customid");
$id = $cgi->param("id");
$filename = $cgi->param("filename");
$format = $cgi->param("format");
$targetError = $cgi->param("targeterror");

# Custom id can be used to store user ids or whatever is needed for the later processing of the
# resulting screenshot

$grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$result = $grabzIt->GetResult($id);

if ($result)
{
        # Ensure that the application has the correct rights for this directory.
        open FILE, ">".File::Spec->catfile("results",$filename) or die $!; 
        binmode FILE;
        print FILE $result; 
        close FILE;
}