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.
Este exemplo mostra como o manipulador GrabzIt Perl pode ser implementado. Isso captura cinco parâmetros passados a ele do 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; }