ویب پر گرفت اور تبدیل کرنے کے اوزار

ASP.NET کے ساتھ ہینڈلرASP.NET API

تفصیل

اپنے ہینڈلر کو ڈیبگ کرنے میں دشواری ہو رہی ہے؟ کی کوشش کریں کال بیک ہینڈلر ٹیسٹ ٹول۔

یہاں بیان کردہ ہینڈلر GrabzIt اسکرین شاٹ ویب سروس سے کال بیکس پر کارروائی کرتا ہے۔ اس ہینڈلر کا URL GrabzIt میں بھیج دیا گیا ہے callBackURL کے پیرامیٹر Save طریقہ. تاہم یہ تکنیک تبھی کام کرے گی جب ہینڈلر انٹرنیٹ کے ذریعے قابل رسائی ہو۔

مندرجہ ذیل پیرامیٹرز GET پیرامیٹرز کے بطور ہینڈلر کو منتقل کردیئے گئے ہیں۔

  • ID - اسکرین شاٹ کا انوکھا شناخت کنندہ ، جو استعمال کیا جاتا ہے GetResult طریقہ
  • فائل کا نام - اسکرین شاٹ کا فائل نام ، خود بخود اس کی فائل ایکسٹینشن کے ساتھ اسکرین شاٹ کے انوکھا شناخت کنندہ کو جوڑ کر تیار کیا جاتا ہے
  • پیغام - اسکرین شاٹ کی کارروائی کے دوران ہونے والی کسی خرابی کی وجہ سے کوئی بھی پیغام
  • کسٹمڈ - کوئی کسٹم ID جسے GrabzIt ویب سروس کے ذریعہ پاس کیا گیا تھا Save طریقہ
  • فارمیٹ - اسکرین شاٹ کی شکل ، جیسے "bmp8" ، "bmp16" ، "bmp24" ، "bmp" ، "csv" ، "gif" ، "jpg" ، "json" ، "pdf" ، "png" ، " جھگڑا "،" ویبپ "یا" xlsx "
  • ہدف سازی - اگر ایک 1 واپس کر دیا گیا ہے تو گرفتاری میں ہدف کی وجہ سے پیدا ہونے والے مسئلے کی وجہ سے گرفت میں عام غلطی ہے۔

اگر آپ ہینڈلر تک تمام رسائی کو مسدود کرنا چاہتے ہیں ، سوائے GrabzIt کے ، تو پھر اس کا استعمال کریں سیکیورٹی تکنیک.

ایم وی سی کا استعمال کرتے ہوئے کال بیک ہینڈلر کو نافذ کرنا

یاد رکھیں کال بیکس کام نہیں کرے گی اگر آپ کی درخواست لوکل ہوسٹ پر واقع ہے۔

کسی ایم وی سی پروجیکٹ میں کسی ہینڈلر کو شامل کرنے کے لئے ، کنٹرولر میں مندرجہ ذیل دستخط کے ساتھ کسی طریقہ کی وضاحت آسانی سے کریں جیسا کہ سیمپل ایم وی سی پروجیکٹ میں دکھایا گیا ہے ASP.NET ڈیمو.

پھر اس طریقہ کار کا یو۔آر۔ایل گربزٹ پر منتقل کریں تاکہ اگر یہ ہوم کنٹرولر میں ہے تو پھر کال بیک یو آر ایل کچھ ایسا نظر آسکتا ہے: http://www.example.com/Home/Handler

public ActionResult Handler(string filename, string id, string message, string customId, string format, int targeterror)
{
    GrabzItClient grabzItClient = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
    GrabzItFile file = grabzItClient.GetResult(id);
    file.Save(Server.MapPath("~/results/" + filename));

    return null;
}

ویب فارموں کا استعمال کرتے ہوئے کال بیک ہینڈلر کو نافذ کرنا

کال بیک بیک ہینڈلر کو نافذ کرنے کا آسان ترین طریقہ یہ ہے کہ ایک عمومی ہینڈلر بنانا اور اس کا وارث ہونا GrabzIt.Handler کلاس کے طور پر ذیل میں دکھایا گیا ہے اور پھر عمل درآمد Process طریقہ یہ طریقہ GrabzIt سروس سے اس تک پہنچائے گئے پانچ پیرامیٹرز کی گرفت کرتا ہے ، جس میں گرفتاری کی انوکھی شناخت بھی شامل ہے جو GetResult طریقہ.

یہ طریقہ پھر گرفتاری کو واپس کرتا ہے ، جو ہے saveنتائج کی ڈائرکٹری میں d۔ تاہم اگر null قدر سے لوٹائی جاتی ہے GetResult اس طریقے سے یہ ظاہر ہوتا ہے کہ غلطی واقع ہوئی ہے۔

public class OverridenHandler : GrabzIt.Handler
{
    protected override void Process(HttpContext context, string filename, string id, string message,
        string customId, string format, bool targetError)
    {
        GrabzItClient grabzIt = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
        GrabzItFile file = grabzIt.GetResult(id);
        file.Save(context.Server.MapPath("~/results/" + filename));
    }
}

دیگر تکنیک

جب کہ مذکورہ تکنیک عمومی ہینڈلر کا استعمال کرتی ہے ، آپ کال بیک کو حاصل کرنے اور کیپچر ڈاؤن لوڈ کرنے کے لئے آسانی سے ASPX صفحہ استعمال کرسکتے ہیں۔ ایسا کرنے کے ل just ، خود اپنا ASPX صفحہ وغیرہ بنائیں اور پھر پڑھیں استفسار میںstring مذکورہ بالا پیرامیٹرز. سب سے زیادہ مفید پیرامیٹر آئی ڈی پیرامیٹر ہے ، جس کے ساتھ استعمال کیا جاسکتا ہے GetResult گرفتاری ڈاؤن لوڈ کرنے کا طریقہ۔