REST 커넥터 테스트하기
Mendix 10.6 제안 새로운 방법 REST 서비스 사용. 암시적 매핑과 다음 기능을 제공합니다. Studio Pro에서 직접 통화를 테스트하고 REST 통화를 그룹화하세요. 나는 새로운 것을 가지고 놀 수 있는 기회를 얻었습니다. 베타 버전의 REST 커넥터. 내가 찾은 내용을 간략하게 요약해 보겠습니다.
새로운 커넥터에 대한 좋은 테스트는 내가 사용해 본 적이 없는 API를 사용하는 것이라고 생각했습니다. 잠재적인 API를 찾은 후, 나는 아사나. 저는 Asana를 선택했습니다. 제 팀에서 사용했기 때문에, 즉, 끌어올 수 있는 데이터가 많을 것이기 때문입니다. 게다가, 제 팀이 일하고 목표를 달성하는 방식에 대한 통찰력을 제공할 수 있는 무언가를 나중에 만들어낼 수 있는 잠재력을 제공할 것입니다.
Asana의 API를 실제로 통합하기 전에, 제 눈에 바로 띄는 몇 가지 사항이 있었습니다. 먼저 살펴보겠습니다.
간소화된 UI
가장 먼저 눈에 띄는 것은 우아한 디자인입니다. 편집기 상단에는 연결 세부 정보, 매개변수 및 헤더가 왼쪽에 있고 응답 데이터가 오른쪽에 있습니다. 이 정리된 보기를 통해 API에 대한 모든 세부 정보를 한곳에서 볼 수 있습니다.
두 번째로 눈에 띄는 점은 Studio Pro에서 API에 직접 테스트 요청을 보낼 수 있는 기능입니다.
이 놀라운 기능 중 일부를 자세히 살펴보겠습니다.

API를 통합하면 통합을 보다 쉽게 관리할 수 있도록 여러 가지 새로운 기능이 제공됩니다.
먼저, 통합하는 API 컬렉션에 대한 기본 URL을 설정할 수 있습니다. "구성 및 인증"을 클릭하면 모든 요청에 사용되는 루트 URL을 정의할 수 있으며, Asana의 경우 https://app.asana.com/api/1.0입니다.

기본 URL을 정의한 후에는 컬렉션에서 수행하는 모든 요청에 접두사가 붙게 되며, 위 화면에서 이를 실제로 볼 수 있습니다.
새로운 요청을 만드는 것은 간단합니다. 화면에서 새로운 요청을 열려면 "요청 추가"를 클릭합니다. 요청 간에 이동하려면 "구성 및 인증"과 "요청 추가" 사이의 탭을 클릭합니다. 만든 요청에 대한 드롭다운 메뉴가 표시됩니다.

헤더와 매개변수를 추가하는 것도 이제 더 쉬워졌습니다. 헤더를 추가할 때 일반적으로 사용되는 옵션 목록이 표시됩니다. (평범하지 않은 것에는 항상 "사용자 정의" 옵션이 있습니다.)

새로운 UI를 사용하면 앱을 실행하지 않고도 Studio Pro에서 직접 엔드포인트로 테스트 요청을 보낼 수도 있습니다. 요청이 올바르게 통합되면 응답이 오른쪽의 Response Data 아래에 표시됩니다.


성공적인 요청 후 Studio Pro는 응답 데이터를 사용하여 현재 도메인 모델이 없는 경우 적합한 도메인 모델을 생성합니다. 또한 "다시 만들기"를 클릭하여 언제든지 응답에 대한 이 데이터 매핑을 다시 만들 수 있습니다.

새로운 커넥터를 사용하여 Asana 통합
GET/작업공간
실험의 일환으로 Asana의 Workspaces Endpoint에 GET 요청을 했습니다. 이 엔드포인트는 사용자의 Organization(Asana 데이터 구조의 루트)을 반환합니다. 모든 팀, 작업 및 피드백 항목은 Organization Structure에 포함되어 있습니다. Workspace 또는 Org의 글로벌 식별자인 GID 없이는 계속할 수 없습니다.
이 요청은 Asana의 PAT가 필요합니다. 이 간단한 실험에 OAuth를 구현하지 않기로 했기 때문입니다. PAT를 얻는 방법에 대해 자세히 읽어보세요. 여기에서 확인하세요..
이것은 GET 요청이므로 PAT를 요청의 일부로 보내려면 Authorization 헤더를 정의해야 합니다. 그런 다음 토큰을 키워드 "bearer"와 함께 보내 사용자를 인증해야 합니다.
"헤더"에서 "새로 만들기"를 클릭하고 "사용자 지정" 헤더 옵션을 선택한 다음 "Authorization" 키를 "Bearer XXX_MyPAT_XXX" 값으로 정의했습니다.

몇 가지 작업만 한 후 보내기를 눌러 작업을 테스트할 준비가 되었습니다. "200 OK" 응답이 돌아왔고 즉시 가능한 도메인 모델이 생성되었고, 그때 생성하기로 선택했습니다.
이 GID를 PAT와 함께 사용하면 이제 작업 생성 엔드포인트를 통합할 수 있습니다.
POST/작업
Asana는 매우 유연한 API를 가지고 있으며 권한 있는 PAT와 작업 공간 GID 외에 작업을 만드는 데 추가 정보가 필요하지 않습니다. 다른 필드는 비워둘 수 있습니다. 작업은 생성될 때 이러한 기본값을 사용합니다.
하지만 "완료" 부울 및 "메모" 문자열과 함께 "이름" 문자열도 계속 설정합니다.
Asana는 API 문서에서 볼 때 오른쪽에 요청을 빌드하는 데 도움이 되는 멋진 놀이터를 제공합니다. 저는 그것을 사용하여 요청에 대한 JSON 본문을 빌드했습니다. Studio Pro의 "본문" 필드에 붙여넣고 "JSON 스니펫 사용"을 클릭했습니다. Asana는 데이터를 해석하고 본문 구조 아래에 가능한 모델을 생성했고, 저는 이를 적용하기로 했습니다.

그 후 저는 호기심이 생겨서 보내기를 눌렀습니다. Studio Pro는 즉시 "201 Created" 응답을 가져왔습니다. 그런 다음 이 데이터를 사용하여 응답에 대한 도메인 모델을 생성했는데, 구현되면 실제로 데이터를 보관합니다.

이제 남은 일은 Microflow에서 이 서비스를 호출하는 것입니다. 도구 상자의 "Integration Activities"에서 "REST 요청 보내기" 작업을 찾을 수 있습니다. 이를 플로우로 끌어온 후에는 REST 서비스, 우리의 경우 "CreateTask" 요청을 선택하기만 하면 됩니다.

그 후에 필요한 것은 API에 대해 정의한 엔터티를 사용하여 데이터를 만드는 것뿐입니다.
우리는 서로에 대한 연관성을 설정하는 것을 기억하면서 평소처럼 엔티티를 생성할 수 있습니다. 그런 다음 간단히 "REST 요청 보내기" 작업에 데이터를 제공합니다.


맺음말
전반적으로 새로운 커넥터를 사용하는 것이 정말 직관적이라는 것을 알았습니다. 통합은 제가 전문 분야라고 생각하지만, 이 분야의 신인이라도 이것을 사용하는 법을 배우는 데 아무런 문제가 없을 것입니다.
반면에 개발자들은 다음과 같은 경험을 가지고 있습니다. Mendix 통합을 통해 업무를 구성하고 구현하는 데 있어 더 깔끔하고 효율적인 방법이 될 것입니다.
제가 언급했듯이, 커넥터는 베타 상태입니다. 현재 PUT 또는 DELETE 작업을 지원하지 않으며, 유연성과 보안을 개선하기 위해 다양한 인증 유형에 대한 상수를 설정하는 기능을 추가하는 작업을 계속 진행 중입니다.
전반적으로 나는 새로운 커넥터를 즐겼고 그것이 REST를 사용하는 방식에 상쾌한 변화를 가져다 주었다고 생각했습니다. Mendix.