أدوات لالتقاط وتحويل الويب

معالج مع Node.jsNode.js API

الوصف

هل تواجه مشكلات في تصحيح معالجك؟ جرب ال رد الاتصال أداة اختبار معالج.

يعالج المعالج الموضح هنا عمليات الاسترجاعات من خدمة GrabzIt screenshot على الويب. يتم تمرير عنوان URL لهذا المعالج إلى GrabzIt في callBackUrl المعلمة من save الأسلوب. ومع ذلك ، لن تعمل هذه التقنية إلا إذا كان المعالج يمكن الوصول إليه عبر الإنترنت.

يتم تمرير المعلمات التالية إلى المعالج كمعلمات GET.

  • معرف - المعرف الفريد للشاشة ، المستخدمة من قبل get_result طريقة
  • اسم الملف - اسم ملف لقطة الشاشة ، الذي يتم إنشاؤه تلقائيًا من خلال الجمع بين المعرف الفريد للشاشة وإضافتها
  • رسالة - أي رسالة بسبب خطأ ناتج أثناء معالجة لقطة الشاشة
  • customId - أي معرف مخصص التي تم نقلها إلى GrabzIt خدمة الإنترنت عبر save طريقة
  • تنسيق - تنسيق لقطة الشاشة ، مثل "bmp8" ، "bmp16" ، "bmp24" ، "bmp" ، "csv" ، "gif" ، "jpg" ، "json" ، "pdf" ، "png" ، " tiff "أو" webp "أو" xlsx "
  • الهدف - إذا تم إرجاع 1 ، فإن الالتقاط يحتوي على خطأ عام ، بسبب مشكلة ناتجة عن هدف الالتقاط

إذا كنت ترغب في حظر كل الوصول إلى المعالج ، باستثناء GrabzIt ، فاستخدم هذا تقنية الأمان.

مثال

تذكر أن رد الاتصال هذا لن يعمل إذا كان تطبيقك موجودًا على المضيف المحلي.

يوضح هذا المثال كيف يمكن تنفيذ معالج GrabzIt Node.js باستخدام التعبير السريع. هذا يلتقط خمس معلمات مرت عليها من خدمة GrabzIt ، بما في ذلك المعرف الفريد للشاشة التي يتم تمريرها إلى get_result الأسلوب.

هذه الطريقة ثم إرجاع لقطة الشاشة ، وهو saveد في دليل لقطة الشاشة.

var express = require('express');
var url = require('url');
var file = require('fs');
var grabzit = require('grabzit');

var app = express();

app.get('/handler', function (req, res) {
    var queryData = url.parse(req.url, true).query;

    var message = queryData.message;
    var customid = queryData.customid;
    var id = queryData.id;
    var filename = queryData.filename;
    var format = queryData.format;
    var targeterror = queryData.targeterror;

    var client = new grabzit('Sign in to view your Application Key', 'Sign in to view your Application Secret');

    client.get_result(id, function(err, result){
        if (err != null) {            
            return;
        }

        file.writeFile(path.join('public', path.join('results', filename)), result, 'binary');
    });

    res.end();
});