Herramientas para capturar y convertir la web

Manejador con Node.jsAPI Node.js

Descripción

¿Tiene problemas para depurar su controlador? Prueba el Herramienta de prueba de controlador de devolución de llamada.

El controlador descrito aquí procesa las devoluciones de llamada del servicio web de captura de pantalla GrabzIt. La URL de este controlador se pasa a GrabzIt en el callBackUrl parámetro de la save método. Sin embargo, esta técnica solo funcionará si se puede acceder al controlador a través de Internet.

Los siguientes parámetros se pasan al controlador como parámetros GET.

  • id: el identificador único de la captura de pantalla, utilizado por obtener_resultado Método
  • filename: el nombre de archivo de la captura de pantalla, creado automáticamente combinando el identificador único de la captura de pantalla con su extensión de archivo
  • mensaje: cualquier mensaje debido a un error causado durante el procesamiento de la captura de pantalla
  • customId: cualquiera ID personalizado que se pasó al servicio web GrabzIt a través de save Método
  • formato: el formato de la captura de pantalla, por ejemplo, "bmp8", "bmp16", "bmp24", "bmp", "csv", "gif", "jpg", "json", "pdf", "png", " tiff "," webp "o" xlsx "
  • targetterror: si se devuelve un 1, la captura contiene un error genérico, debido a un problema causado por el objetivo de captura

Si desea bloquear todo el acceso al controlador, excepto desde Grabz, use este técnica de seguridad.

Ejemplo

Recuerde que esta devolución de llamada no funcionará si su aplicación se encuentra en localhost.

Este ejemplo muestra cómo se puede implementar un controlador GrabzIt Node.js mediante express. Esto captura cinco parámetros que le pasó del servicio GrabzIt, incluida la identificación única de la captura de pantalla que se pasa al obtener_resultado método.

Este método luego devuelve la captura de pantalla, que es saved en el directorio de captura de pantalla.

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