HTTP Request
지정한 URL을 GET해서, 응답의 본문을 Body에 문자열로 출력합니다. 메서드는 GET뿐이고, 리퀘스트 보디나 헤더의 지정은 없습니다. 타임아웃은 10초입니다.
송신의 계기
Auto send(기본값 ON) — URL이 바뀌었을 때 자동으로 송신합니다. 프로젝트를 읽어 들여 저장되어 있던 URL이 복원되기만 한 것으로는 송신되지 않습니다Send버튼 — 노드의 버튼으로, 그 시점의 URL을 송신합니다Send포트 — 트리거가 발화했을 때 송신합니다.Auto send의 ON/OFF와 관계없이 동작합니다
URL은 노드 본체의 칸에 적거나 URL 포트로 흘려 넣거나 어느 쪽이든 괜찮고, 본체의 칸은 Enter 키 또는 칸에서 포커스가 벗어났을 때 확정됩니다(확정된 순간이 ‘URL이 바뀐’ 타이밍입니다).
송신 중에 다음 송신이 시작되면, 이전의 요청은 중단되고 가장 최신의 것만 살아남습니다. 곡이 바뀌었는데 이전 곡의 응답이 나중에 도착한다는 순서의 붕괴가 일어나지 않습니다.
URL이 http://나 https://로 시작하는 절대 URL이 아닐 때는 아무것도 송신되지 않고, 노드에 그 사실이 표시됩니다.
4가지 출력
Body— 성공했을 때의 응답 본문. 값이 지난번과 달라졌을 때만 나옵니다Status— 응답의 HTTP 상태 코드. 이쪽도 변화했을 때만Done— 성공해서 본문이 나왔을 때 1회 발화Error— 접속 실패·타임아웃·4xx/5xx일 때 1회 발화
실패해도 Body는 지난번의 성공 값을 유지합니다(화면에서 글자가 사라지지 않습니다). 끝까지 달린 요청은 Done이나 Error 중 하나를 한 번만 발화합니다. 도중에 중단된 요청은 어느 쪽도 발화하지 않습니다.
노드의 작은 글자에, 송신 중·응답의 상태와 본문의 글자 수·실패 이유가 표시됩니다.
URL의 조립은 Text Format, 돌아온 JSON의 추출은 JSON Path와 조합하면, 외부 API를 한 줄의 선으로 돌릴 수 있습니다.
입력 포트
| Port ID | 타입 |
|---|---|
URL | string |
Send | trigger |
출력 포트
| Port ID | 타입 |
|---|---|
Body | string |
Status | int |
Done | trigger |
Error | trigger |
스크립트에서 설정할 수 있는 멤버
| 경로 | 타입 |
|---|---|
urlInput | string |
currentUrl | string |
currentAutoSend | bool |
Synapse Apps (스크립팅)
await synapse.modules.create({ type: "HttpRequest" }) 
