ওয়েব ক্যাপচার এবং রূপান্তর করার সরঞ্জামসমূহ

পার্ল সহ গ্র্যাবজিট হ্যান্ডলার

পার্ল এপিআই

বিবরণ

আপনার হ্যান্ডলারটি ডিবাগ করতে সমস্যা হচ্ছে? চেষ্টা কর কলব্যাক হ্যান্ডলার পরীক্ষার সরঞ্জাম।

এখানে বর্ণিত হ্যান্ডলার গ্র্যাবিজ স্ক্রিনশট ওয়েব পরিষেবা থেকে কলব্যাকগুলি প্রক্রিয়া করে। এই হ্যান্ডলারের URL টি GrabzIt এ দেওয়া হয়েছে callBackURL এর প্যারামিটার Save পদ্ধতি। তবে এই কৌশলটি কেবল তখনই কাজ করবে যদি হ্যান্ডলারটি এর মাধ্যমে অ্যাক্সেসযোগ্য হয় Internet।

নিম্নলিখিত পরামিতিগুলি হ্যান্ডলারের কাছে GET পরামিতি হিসাবে প্রেরণ করা হবে।

আপনি যদি গ্র্যাবজিট ব্যতীত হ্যান্ডলারের সমস্ত অ্যাক্সেস অবরুদ্ধ করতে চান তবে এটি ব্যবহার করুন সুরক্ষা কৌশল.

উদাহরণ

মনে রাখবেন যে আপনার অ্যাপ্লিকেশন লোকালহোস্টে অবস্থিত থাকলে এই কলব্যাক কাজ করবে না।

এই উদাহরণটি দেখায় কিভাবে GrabzIt পার্ল হ্যান্ডলার প্রয়োগ করা যেতে পারে। এটি GrabzIt পরিষেবা থেকে পাস করা ছয়টি প্যারামিটার ক্যাপচার করে, যার মধ্যে স্ক্রিনশটের অনন্য আইডি যা GetResult পদ্ধতি।

এই পদ্ধতিটি তখন স্ক্রিনশটটি দেয়, যা is saveফলাফল ডিরেক্টরিতে d। তবে যদি ক 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;
}