SFTP To Go 에서 Webhook 를 사용하는 방법
먼저 Webhook에 대해 이야기해 보겠습니다. 웹후크는 온라인 서비스 간의 통신을 용이하게 하는 다양한 수단 중 하나로, 앱이 서로 연결되는 방식입니다. 보다 구체적으로 Webhook는 기점이 되는 시스템에서 대상 또는 수신자 시스템으로 보내는 이벤트에 의해 활성화되는 HTTP 요청입니다.
이 자동 데이터 교환은 웹을 통해 HTTP(또는 HTTPs) 프로토콜을 사용하여 이루어지며, 대부분의 경우 실제 데이터는 HTTP 요청 본문 내의 JSON 형식을 사용하여 전송됩니다. Webhook을 구성할 때 송신 앱은 수신 앱이 수신 중인 웹훅 대상 URL을 알고 이벤트를 기다립니다.
SFTP To Go의 Webhook 알림을 사용하면 앱을 통합하고 SFTP에서 파일 및 디렉터리의 삭제, 생성 또는 수정을 추적하여 변경이 발생할 때 자동으로 처리할 수 있습니다.
이 글에서는 SFTP To Go에서 Webhook 알림을 설정하는 방법을 단계별로 안내합니다. 테스트 목적으로 Webhook URL로는 webhook.site 엔드포인트를 사용하겠습니다. 자체 앱 코드가 준비되면 Webhook URL을 여러분의 앱 URL로 설정하고 요청이 제대로 처리되는지 확인해야 합니다.
1단계: 새로운 Webhook 추가하기
- SFTP To Go의 대시보드로 이동합니다.
- 상부 메뉴에 있는 Webhooks를 클릭합니다
- Add webhook(Webhook 추가하기)를 클릭합니다.
- 대화 상자가 나타나면 다음을 입력합니다:
- Nickname (별명) - Webhook을 쉽게 알아볼 수 있는 설명이 포함된 이름입니다.
- Endpoint URL (엔드포인트 URL) - 모든 Webhook 알림을 수신할 서버 엔드포인트의 HTTPS URL입니다.
- Authorization header (권한 부여 헤더) - 앱에 권한 부여가 필요한 경우 또는 수신하는 요청이 실제로 SFTP To Go에서 온 것인지 확인하려는 경우 권한 부여 헤더에 값을 입력하고 수신 측에 해당 값이 있는지 간단히 확인할 수 있습니다.
- Topics (토픽) - 알림을 받고자 하는 알림의 종류를 선택합니다. 사용 사례에 따라 두 가지 토픽 중 하나 또는 두 가지 모두를 선택할 수 있습니다:
- File created (파일 생성) - 새 파일 또는 디렉터리가 만들어질 때마다 알려줍니다.
- File deleted (파일 삭제) - 파일 또는 디렉터리가 삭제될 때마다 알려줍니다.
- add webhook(Webhook 추가하기)를 클릭합니다.
- 로그인 암호(Signing secret)가 생성되어 복사할 수 있도록 한 번 공개됩니다. 각 요청은 Webhook 요청의
X-Hub-Signature
헤더에 SFTP To Go가 확인합니다. 요청의 진위 여부를 확인하려면 로그인 암호를 복사하여 Webhook 암호를 확인하는 데 사용하세요. 로그인 암호은 언제든지 교체하여 새로운 암호를 할당받을 수 있습니다. - Okay, I got the secret(네, 암호를 받았습니다)를 클릭하고, 다음 단계로 이동하세요.
2단계: 생성한 새로운 Webhook 테스트하기
여러분이 생성한 Webhook이 모두 설정되었으므로 이제 수신 측에서도 모든 것이 제대로 작동하는지 테스트할 차례입니다. 가장 효율적인 방법은 ping webhook를 보내는 것입니다:
- SFTP To Go의 Webhook 패널에서 Webhook의 Actions 메뉴를 클릭하고 Ping Webhook를 선택합니다.
- Yes, ping this webhook(네, 이 Webhook를 ping합니다)를 클릭합니다.
- 앱이 Webhook을 획득하고 관리했는지 확인합니다. 200 수준의 상태 코드로 응답해야 한다는 점에 유의하세요. Webhook을 테스트하기 위해 webhook.site를 사용하는 경우 요청 헤더와 본문을 볼 수 있습니다. 페이로드 내에서 이벤트가 언제 발생했는지 알려주는
CreatedAt
키와 "webhook.ping" 이벤트임을 알려주는Topic
에 주목하세요.OrganizationId
는 여러분의 SFTP To Go 애드온 인스턴스를 식별합니다.
Webhook을 테스트할 수 있는 또 다른 옵션은 이벤트가 발생할 때까지 기다리거나 파일을 업로드하거나 기존 파일을 삭제하여 수동으로 이벤트를 시작하는 것입니다.
요청 페이로드의 Data
키에는 파일 경로 및 크기와 같은 중요한 정보가 포함되어 있습니다.
Webhook 페이로드에 대한 자세한 내용은 여기를 참조하세요. 짧은 Webhook 튜토리얼영상을 시청하는 것도 좋습니다:
Post photo by Damir Spanic on Unsplash