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.
Dit voorbeeld laat zien hoe een GrabzIt Ruby-handler kan worden geïmplementeerd. 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. Maar als een nil
waarde wordt geretourneerd door de get_result methode geeft dit aan dat er een fout is opgetreden.
require 'grabzit' class HandlerController < ApplicationController def index message = params[:message] customId = params[:customid] id = params[:id] filename = params[:filename] format = params[:format] targetError = params[:targeterror] grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")%>") result = grabzItClient.get_result(id) if result == nil return end # Ensure that the application has the correct rights for this directory. screenshot = File.new("public/screenshots/"+filename, "wb") screenshot.write(result) screenshot.close end end