Además de la funcionalidad de captura de pantalla estándar API de Ruby de GrabzIt permite a los desarrolladores intEgrate estrechamente con GrabzIt al permitir que su aplicación se enganche into el funcionamiento interno del servicio de GrabzIt, por ejemplo, verificando el estado de las capturas de pantalla existentes y configurando las cookies que GrabzIt usará al capturar contenido web.
Es posible que una aplicación necesite verificar el estado de una captura y esto es donde get_status El método es útil, devuelve un objeto que indica si una captura aún se está procesando, almacenando en caché o ha expirado junto con devolver cualquier mensaje de error asociado con la captura.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") status = grabzItClient.get_status(screenShotId) if status.processing #screenshot has not yet been processed end if status.cached #screenshot is still cached by GrabzIt end if status.expired #screenshot is no longer on GrabzIt #Perhaps output status message? raise status.message end
Casi todos los sitios web controlan la funcionalidad con cookies. Para permitirle alterar las funciones del sitio web de destino, Grabz expone los siguientes métodos de cookies, para obtener más información sobre los parámetros disponibles para estos métodos, lea el documentación del cliente.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") #gets an array of cookies for google.com cookies = grabzItClient.get_cookies("google.com") #sets a cookie for the google.com domain grabzItClient.set_cookie("MyCookie", "google.com", "Any Value You Like") #deletes the previously set cookie grabzItClient.delete_cookie("MyCookie", "google.com")
Se recomienda descargar una captura a un servidor web antes de usarla. Sin embargo, es posible mostrar cualquier tipo de captura en el navegador de un usuario sin descargarla primero en su servidor web.
Para hacer esto, una vez que la captura haya finalizado, puede enviar los bytes de la captura devueltos por el save_to Método a la respuesta junto con el tipo mimo correcto.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") grabzItClient.url_to_image("https://www.tesla.com") capture = grabzItClient.save_to();
En el ejemplo anterior, obtenemos los bytes de la captura, pero la forma en que se devuelve a la respuesta dependerá del marco que esté utilizando.