콘텐츠로 이동

시나리오 소개

시나리오는 그래프입니다. 박스(액션)가 값과 신호를 실어 나르는 링크로 서로 연결됩니다. 엔진은 배선된 입력이 모두 무언가를 받은 즉시 해당 박스를 실행합니다.

Restorm에서는 이것이 다른 API 클라이언트의 요청 전 / 요청 후 스크립트를 대신합니다. 게다가 결정적인 장점이 하나 있습니다. 흐름이 눈에 보인다는 점입니다.

트리에서 우클릭 ▸ 추가 ▸ 시나리오.

에디터에 표시된 완성된 시나리오: Input/Param 노드, HTTP 요청, 상태 코드에 대한 어서션, Handlebars 추출, If 조건, Log

  • 호출을 연결하여 한 호출의 값을 다음 호출로 넘깁니다. 리소스를 만들고, 그 식별자를 받아 다음 호출에서 사용하는 식입니다.
  • 검증합니다. 어서션, JSON 스키마 검증, 비교.
  • 분기와 루프. if, switch, for, forEach, while, retry.
  • 여러 전송 방식을 지휘합니다. MQTT 구독을 열고, HTTP로 동작을 일으키고, 메시지가 도착하는지 확인합니다.
  • 자동화합니다. 같은 시나리오가 인터페이스에서도 지속적 통합에서 창 없이도 동작합니다.
개념내용
박스(노드)하나의 액션. 90 가지 유형을 사용할 수 있습니다 — 카탈로그를 참고하십시오
포트박스 위의 연결 지점. 타입과 방향을 가집니다
링크(에지)출력 포트와 입력 포트를 잇는 한 줄의 선
셀렉터링크를 통과하는 값에 적용되는 경로 (data.items[0].id)
실행 변수실행 중에 설정하고 다시 읽는, 이름이 붙은 값
파라미터시나리오의 입력. 실행 시점이나 명령줄에서 제공합니다
출력시나리오의 호출자에게 공개되는 결과

모든 박스가 가지는 세 개의 포트

Section titled “모든 박스가 가지는 세 개의 포트”

이 포트들은 설정에 나열되지 않습니다. 박스의 틀 자체에 포함되어 있습니다.

포트방향역할
in입력트리거. 들어오는 링크를 여러 개 받아들이며, 그럴 때는 모두 도착할 때까지 기다립니다 — “여러 분기가 끝나기를 기다린다”는 배리어입니다
error출력실패 경로. 실패한 것은 모두 이곳으로 나갑니다
done출력박스 와 그 하위 그래프 전체가 끝났을 때 발생합니다

done 과 값 출력의 구분은 중요합니다. 값은 생성되는 즉시 나가지만, done 은 그 값에 의존하는 모든 것이 끝나기를 기다립니다.

  1. HTTP 요청 액션을 추가하고 기존 요청에 연결하십시오.
  2. Assert 액션을 추가하고 연산자를 eq 로 지정하십시오.
  3. 요청의 response 포트에서 어서션의 입력 a 로 링크를 끌고, 그 링크에 셀렉터 status 를 지정하십시오.
  4. 어서션에서 b200 으로 설정하십시오.
  5. 재생을 클릭하십시오.

어서션에는 thenelse 두 개의 출력이 있습니다. 각각에 LogToast를 연결하면 결과가 흘러가는 모습을 볼 수 있습니다.