Narzędzia do przechwytywania i konwertowania Internetu

Program obsługi z Node.jsInterfejs API Node.js

Opis

Masz problemy z debugowaniem programu obsługi? Spróbuj Narzędzie do testowania obsługi wywołania zwrotnego.

Opisany tu moduł obsługi przetwarza wywołania zwrotne z serwisu internetowego zrzutu ekranu GrabzIt. Adres URL tej procedury jest przekazywany do GrabzIt w pliku callBackUrl parametr save Metoda. Jednak ta technika będzie działać tylko wtedy, gdy program obsługi jest dostępny przez Internet.

Następujące parametry są przekazywane do modułu obsługi jako parametry GET.

  • id - unikalny identyfikator zrzutu ekranu, używany przez get_result metoda
  • nazwa pliku - nazwa pliku zrzutu ekranu, tworzona automatycznie przez połączenie unikalnego identyfikatora zrzutu ekranu z jego rozszerzeniem
  • wiadomość - każda wiadomość spowodowana błędem spowodowanym podczas przetwarzania zrzutu ekranu
  • customId - dowolny niestandardowy identyfikator które zostały przekazane do serwisu internetowego GrabzIt za pośrednictwem save metoda
  • format - format zrzutu ekranu, np. „bmp8”, „bmp16”, „bmp24”, „bmp”, „csv”, „gif”, „jpg”, „json”, „pdf”, „png”, „ tiff ”,„ webp ”lub„ xlsx ”
  • celerror - jeśli zostanie zwrócony 1, wówczas przechwytywanie zawiera błąd ogólny z powodu problemu spowodowanego przez cel przechwytywania

Jeśli chcesz zablokować cały dostęp do modułu obsługi, oprócz GrabzIt, użyj tego technika bezpieczeństwa.

Przykład

Pamiętaj, że to wywołanie zwrotne nie będzie działać, jeśli aplikacja znajduje się na komputerze lokalnym.

Ten przykład pokazuje, w jaki sposób można zaimplementować moduł obsługi GrabzIt Node.js za pomocą express. Przechwytuje pięć parametrów przekazanych mu z usługi GrabzIt, w tym unikalny identyfikator zrzutu ekranu, który jest przekazywany do get_result Metoda.

Ta metoda następnie zwraca zrzut ekranu, który jest saved w katalogu zrzutów ekranu.

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();
});