Ferramentas para capturar e converter a Web

Manipulador GrabzIt com Perl

API Perl

Descrição

Está tendo problemas para depurar seu manipulador? Tente o Ferramenta de teste de manipulador de retorno de chamada.

O manipulador descrito aqui processa retornos de chamada do serviço da Web de captura de tela GrabzIt. A URL desse manipulador é passada para GrabzIt no diretório callBackURL parâmetro do Save método. No entanto, essa técnica só funcionará se o manipulador estiver acessível por meio do Internet.

Os seguintes parâmetros são passados ​​para o manipulador como parâmetros GET.

Se você deseja bloquear todo o acesso ao manipulador, exceto o GrabzIt, use este técnica de segurança.

Exemplo

Lembre-se de que este retorno de chamada não funcionará se o seu aplicativo estiver localizado no host local.

Este exemplo mostra como o manipulador GrabzIt Perl pode ser implementado. Isso captura seis parâmetros passados ​​a ele pelo serviço GrabzIt, incluindo o ID exclusivo da captura de tela que é passada para o GetResult método.

Esse método retorna a captura de tela, que é saved no diretório de resultados. No entanto, se um null valor é retornado do GetResult método indica que ocorreu um erro.

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;
}