Tools om het web vast te leggen en te converteren

Handler met Node.js

Node.js API

Omschrijving

Heeft u problemen met het debuggen van uw handler? Probeer de Callback Handler-testtool.

De hier beschreven handler verwerkt callbacks van de GrabzIt-screenshotwebservice. De URL van deze handler wordt doorgegeven aan GrabzIt in de callBackUrl parameter van de save methode. Deze techniek werkt echter alleen als de handler toegankelijk is via de Internet.

De volgende parameters worden als GET-parameters aan de handler doorgegeven.

Als u alle toegang tot de handler wilt blokkeren, behalve GrabzIt, gebruikt u dit beveiligingstechniek.

Voorbeeld

Onthoud dat dit terugbellen niet werkt als uw toepassing zich op localhost bevindt.

Dit voorbeeld laat zien hoe een GrabzIt Node.js-handler kan worden geïmplementeerd met behulp van express. Dit legt zes parameters vast die eraan zijn doorgegeven vanuit de GrabzIt-service, inclusief de unieke ID van de schermafbeelding die wordt doorgegeven aan de get_result methode.

Deze methode retourneert vervolgens de screenshot, wat is saved in de screenshot-map.

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