כלים ללכידה ולהמרה של האינטרנט

מטפל GrabzIt עם פרלפרל API

תיאור

נתקלת בבעיות באגים במטפל שלך? לנסות את כלי בדיקת מטפל התקשרות חוזרת.

המטפל המתואר כאן מעבד התקשרות משירות האינטרנט המסך של GrabzIt. כתובת האתר של מטפל זה מועברת ל- GrabzIt ב- callBackURL פרמטר של Save שִׁיטָה. עם זאת טכניקה זו תעבוד רק אם המטפל נגיש דרך האינטרנט.

הפרמטרים הבאים מועברים למטפל כפרמטרים GET.

  • id - המזהה הייחודי של צילום המסך, המשמש את ה- GetResult שיטה
  • שם קובץ - שם הקובץ של צילום המסך, שנוצר באופן אוטומטי על ידי שילוב המזהה הייחודי של המסך עם סיומת הקובץ שלו
  • הודעה - כל הודעה עקב שגיאה שנגרמה במהלך עיבוד צילום המסך
  • מותאם אישית - כל מזהה מותאם אישית זה הועבר לשירות האינטרנט GrabzIt דרך Save שיטה
  • פורמט - פורמט המסך, למשל "bmp8", "bmp16", "bmp24", "bmp", "csv", "gif", "jpg", "json", "pdf", "png", " webp "," tiff "או" xlsx "
  • targeterror - אם מוחזר 1 אז הלכידה מכילה שגיאה כללית, בגלל בעיה הנגרמת על ידי היעד ללכידה

אם ברצונך לחסום את כל הגישה למטפל, מלבד GrabzIt, השתמש בזה טכניקת אבטחה.

דוגמה

זכור כי התקשרות חוזרת זו לא תעבוד אם היישום שלך ממוקם על localhost.

דוגמה זו מראה כיצד ניתן ליישם את המטפל GrabzIt Perl. זה לוכד חמישה פרמטרים שהועברו אליו משירות GrabzIt, כולל המזהה הייחודי של המסך המועבר אל GetResult שִׁיטָה.

לאחר מכן שיטה זו מחזירה את צילום המסך, שהוא saveד בספריית התוצאות. אולם אם א 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;
}