Webをキャプチャして変換するツール

RubyのハンドラーRuby API

説明

ハンドラーのデバッグに問題がありますか? 試してみて コールバックハンドラーテストツール。

ここで説明するハンドラーは、GrabzItスクリーンショットWebサービスからのコールバックを処理します。 このハンドラーのURLは、GrabzItに渡されます callBackURL のパラメータ save 方法。 ただし、この手法は、インターネット経由でハンドラにアクセスできる場合にのみ機能します。

次のパラメーターは、GETパラメーターとしてハンドラーに渡されます。

  • id-スクリーンショットの一意の識別子。 get_result 方法
  • filename-スクリーンショットのファイル名。スクリーンショットの一意の識別子とファイル拡張子を組み合わせて自動的に作成されます
  • message-スクリーンショットの処理中に発生したエラーによるメッセージ
  • customId-任意 カスタムID 経由でGrabzIt Webサービスに渡されました save 方法
  • format-スクリーンショットの形式、たとえば「bmp8」、「bmp16」、「bmp24」、「bmp」、「csv」、「gif」、「jpg」、「json」、「pdf」、「png」、 tiff」、「webp」または「xlsx」
  • targeterror-1が返された場合、キャプチャターゲットに起因する問題のため、キャプチャに一般的なエラーが含まれています

GrabzItを除き、ハンドラーへのすべてのアクセスをブロックする場合は、これを使用します セキュリティ技術.

アプリケーションがローカルホストにある場合、このコールバックは機能しません。

この例は、GrabzIt Rubyハンドラーを実装する方法を示しています。 これは、GrabzItサービスから渡された5つのパラメーターをキャプチャします。これには、に渡されるスクリーンショットの一意のIDが含まれます get_result 方法。

次に、このメソッドはスクリーンショットを返します。 saveスクリーンショットディレクトリのd。 ただし、 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