Narzędzia do przechwytywania i konwertowania Internetu

GrabzIt Handler with Perl

Perl API

Opis

Masz problemy z debugowaniem programu obsługi? Spróbuj Narzędzie do testowania obsługi wywołania zwrotnego.

Opisany tu moduł obsługi przetwarza wywołania zwrotne z serwisu internetowego zrzutu ekranu GrabzIt. Adres URL tej procedury jest przekazywany do GrabzIt w pliku callBackURL parametr Save Metoda. Jednak ta technika zadziała tylko wtedy, gdy program obsługi jest dostępny za pośrednictwem Internet.

Następujące parametry są przekazywane do modułu obsługi jako parametry GET.

Jeśli chcesz zablokować cały dostęp do modułu obsługi, oprócz GrabzIt, użyj tego technika bezpieczeństwa.

Przykład

Pamiętaj, że to wywołanie zwrotne nie będzie działać, jeśli aplikacja znajduje się na komputerze lokalnym.

Ten przykład pokazuje, jak można zaimplementować procedurę obsługi GrabzIt Perl. Przechwytuje to sześć parametrów przekazanych mu z usługi GrabzIt, w tym unikalny identyfikator zrzutu ekranu, który jest przekazywany do GetResult Metoda.

Ta metoda następnie zwraca zrzut ekranu, który jest saved w katalogu wyników. Jednak jeśli a null wartość jest zwracana z GetResult metoda oznacza, że ​​wystąpił błąd.

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