웹 캡처 및 변환 도구

ASP.NET을 사용한 처리기ASP.NET API

강의 개요

핸들러를 디버깅하는 데 문제가 있습니까? 시도 콜백 핸들러 테스트 도구.

여기에 설명 된 핸들러는 GrabzIt 스크린 샷 웹 서비스에서 콜백을 처리합니다. 이 핸들러의 URL은 GrabzIt에 전달됩니다. callBackURL 의 매개 변수 Save 방법. 그러나이 기술은 인터넷을 통해 처리기에 액세스 할 수있는 경우에만 작동합니다.

다음 매개 변수는 GET 매개 변수로 핸들러에 전달됩니다.

  • id-스크린 샷의 고유 식별자로 GetResult 방법
  • filename-스크린 샷의 파일 이름으로, 스크린 샷의 고유 식별자와 파일 확장자를 결합하여 자동으로 생성됩니다.
  • message-스크린 샷 처리 중 발생한 오류로 인한 모든 메시지
  • customId-모두 맞춤 ID 그 GrabzIt 웹 서비스를 통해 전달되었습니다 Save 방법
  • format-스크린 샷 형식 (예 : "bmp8", "bmp16", "bmp24", "bmp", "csv", "gif", "jpg", "json", "pdf", "png", ") tiff ","webp "또는"xlsx "
  • targeterror-1가 반환되면 캡처 대상으로 인한 문제로 인해 캡처에 일반 오류가 포함됩니다.

GrabzIt을 제외하고 핸들러에 대한 모든 액세스를 차단하려면 이것을 사용하십시오. 보안 기술.

MVC를 사용하여 콜백 핸들러 구현

애플리케이션이 localhost에 있으면 콜백이 작동하지 않습니다.

MVC 프로젝트에 핸들러를 추가하려면 컨트롤러의 SampleMVC 프로젝트에 표시된대로 컨트롤러에서 다음 서명으로 메소드를 정의하십시오. ASP.NET 데모.

그런 다음이 메소드의 URL을 GrabzIt에 전달하십시오. 이것이 홈 컨트롤러에 있으면 콜백 URL은 다음과 같습니다. http://www.example.com/Home/Handler

public ActionResult Handler(string filename, string id, string message, string customId, string format, int targeterror)
{
    GrabzItClient grabzItClient = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
    GrabzItFile file = grabzItClient.GetResult(id);
    file.Save(Server.MapPath("~/results/" + filename));

    return null;
}

Web Forms를 사용하여 콜백 핸들러 구현

콜백 핸들러를 구현하는 가장 쉬운 방법은 일반 핸들러를 생성하고 GrabzIt.Handler 아래와 같이 클래스를 구현 한 다음 Process 방법. 이 메소드는 GrabzIt 서비스에서 전달 된 5 개의 매개 변수를 캡처합니다. GetResult 방법.

그런 다음이 메소드는 캡처를 리턴합니다. save결과 디렉토리에 d. 그러나 null 에서 값이 반환됩니다 GetResult 이 방법은 오류가 발생했음을 나타냅니다.

public class OverridenHandler : GrabzIt.Handler
{
    protected override void Process(HttpContext context, string filename, string id, string message,
        string customId, string format, bool targetError)
    {
        GrabzItClient grabzIt = GrabzItClient.Create("Sign in to view your Application Key", "Sign in to view your Application Secret");
        GrabzItFile file = grabzIt.GetResult(id);
        file.Save(context.Server.MapPath("~/results/" + filename));
    }
}

다른 기술

위의 기술은 일반 핸들러를 사용하지만 ASPX 페이지를 사용하여 콜백을 받고 캡처를 다운로드 할 수 있습니다. 이렇게하려면 자신의 ASPX 페이지 등을 만든 다음 질문string 위에서 언급 한 매개 변수. 가장 유용한 매개 변수는 id 매개 변수이며 GetResult 캡처를 다운로드하는 방법.