捕获和转换Web的工具

Ruby处理程序Ruby API

产品详情

在调试处理程序时遇到问题吗? 尝试 回调处理程序测试工具。

此处描述的处理程序处理来自GrabzIt屏幕快照Web服务的回调。 该处理程序的URL在以下位置传递给GrabzIt: callBackURL 的参数 save 方法。 但是,仅当通过Internet访问处理程序时,此技术才有效。

以下参数作为GET参数传递给处理程序。

  • id-屏幕截图的唯一标识符,由 get_result 方法
  • filename-屏幕快照的文件名,通过将屏幕快照的唯一标识符与其文件扩展名结合起来自动创建
  • 消息-由于处理屏幕截图期间导致的错误而导致的任何消息
  • customId-任何 自订编号 通过以下方式传递给GrabzIt Web服务 save 方法
  • 格式-屏幕截图的格式,例如“ bmp8”,“ bmp16”,“ bmp24”,“ bmp”,“ csv”,“ gif”,“ jpg”,“ json”,“ pdf”,“ png”,“ tiff”,“ webp”或“ xlsx”
  • targeterror-如果返回1,则由于捕获目标导致的问题,捕获中包含一般错误

如果要阻止对处理程序的所有访问,除了GrabzIt之外,请使用此方法 安全技术.

案例

请记住,如果您的应用程序位于localhost上,则此回调将不起作用。

本示例说明如何实现GrabzIt Ruby处理程序。 这会捕获从GrabzIt服务传递给它的五个参数,包括传递给 get_result 方法。

然后,此方法返回屏幕截图,即 saved在屏幕快照目录中。 但是如果 nil 值是从返回 get_result 方法,这表明发生了错误。

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