요청으로 받은 값을 변수에 담아 보여 주기
요청은 재생 중에 웹 서비스에서 날씨나 환율 같은 값을 받아 변수에 담고, 그 변수를 넣은 텍스트에 보여 줍니다. 여기서는 씬이 열릴 때 서울의 지금 기온을 받아 보여 주는 화면을 만듭니다.
받은 값을 보여 줄 자리 만들기
빈 씬 하나로 시작합니다. 받은 값은 변수에 담기고, 그 변수를 넣은 텍스트에 보입니다. 변수의 종류와 쓰는 곳은 변수에서 설명합니다.
-
변수 만들기
오른쪽 위 버튼 줄의 두 번째, 태그 모양의 변수 버튼을 누르세요. 변수 패널이 열립니다. 제목 줄의 + 모양 변수 추가 버튼을 누르세요. 'New Variable' 줄이 생기고 이름 칸이 입력 상태가 됩니다.
변수 추가를 누르자 'New Variable' 줄이 생기고 이름 칸이 입력 상태가 됩니다. 영상: 오른쪽 위의 태그 모양 변수 버튼을 누르자 변수 패널이 열리고, 제목 줄의 + 버튼을 누르자 'New Variable' 줄이 생기며 이름 칸이 입력 상태가 됩니다. -
이름과 처음 값 넣기
'기온'을 입력하고 ↩ 키를 누르세요. 같은 줄의 값 칸을 클릭해 '불러오는 중'을 입력하고 ↩ 키를 누르세요. 답이 오기 전에는 이 값이 보입니다.
이름을 '기온'으로, 값을 '불러오는 중'으로 바꿉니다. 영상: 이름 칸에 '기온'을 입력하고 Enter 키를 누른 뒤, 같은 줄의 값 칸을 클릭해 '불러오는 중'을 입력하고 Enter 키를 누릅니다. -
텍스트에 넣기
그 줄 오른쪽의 T 모양 텍스트로 삽입 버튼을 누르세요. 씬 가운데에 {{기온}}이 든 텍스트가 생깁니다. esc 키를 누르면 그 자리에 '불러오는 중'이 보입니다.
텍스트로 삽입을 누르자 씬 가운데에 토큰이 든 텍스트가 생기고, esc 키를 누르자 '불러오는 중'이 보입니다. 영상: '기온' 줄 오른쪽의 T 모양 텍스트로 삽입 버튼을 누르자 씬 가운데에 변수 토큰이 든 텍스트가 생기고, Esc 키를 누르자 '불러오는 중'이 보입니다.
씬이 열릴 때 요청 보내기
⇧I를 눌러 인터랙션 모드로 바꾸고, 캔버스의 빈 곳을 클릭해 선택을 푸세요. 아래 인터랙션 패널 제목 옆에 'New Scene · 씬'처럼 씬 이름과 '· 씬'이 보이면, 지금 만드는 문장은 씬의 것입니다.
이 예에서는 날씨 서비스 Open-Meteo에 서울의 지금 기온을 묻습니다. Open-Meteo는 비상업용이라면 API 키 없이 무료로 쓸 수 있습니다. 주소는 다음과 같습니다.
https://api.open-meteo.com/v1/forecast?latitude=37.57&longitude=126.98¤t=temperature_2m
-
요청 문장 만들기
패널 오른쪽 레시피 아래의 직접 만들기를 누르고, 메뉴에서 요청 보내기를 고르세요. 목록에 '누르면 → GET https://api.example.com/ 요청' 문장이 생깁니다. 요청 패널도 함께 열립니다.
직접 만들기에서 요청 보내기를 고르자 문장이 생기고 요청 패널이 열립니다. 영상: 씬의 인터랙션 패널에서 직접 만들기를 누르고 요청 보내기를 고르자, 'GET https://api.example.com/ 요청' 문장이 생기고 요청 패널이 열립니다. -
주소 넣기
요청 패널의 URL 칸은 주소가 선택된 채 열립니다. 위의 주소를 복사해 붙여 넣고 ↩ 키를 누르세요. 오른쪽 편집 열의 문장에 새 주소가 보입니다. 목록의 행에서는 긴 주소가 줄어 보입니다.
선택된 주소 위에 새 주소를 붙여 넣고 ↩ 키를 누르자, 편집 열의 문장이 새 주소로 바뀝니다. 영상: 선택된 URL 칸에 Open-Meteo 주소를 붙여 넣고 Enter 키를 누르자, 오른쪽 편집 열의 문장이 'GET https://api.open-meteo.com/… 요청'으로 바뀝니다. -
받을 값 정하기
받을 변수 아래의 값 추가를 누르세요. 빈 경로 칸과 '→ 기온'이 있는 줄이 생깁니다. 경로 칸을 클릭하고 $.current.temperature_2m을 입력한 뒤 ↩ 키를 누르세요. 답의 current 안에 있는 temperature_2m 값을 '기온'에 담는다는 뜻입니다.
값 추가를 누르자 '→ 기온' 줄이 생기고, 경로 칸을 클릭해 경로를 입력합니다. 영상: 받을 변수의 값 추가를 누르자 빈 경로 칸과 '→ 기온'이 있는 줄이 생기고, 경로 칸을 클릭해 $.current.temperature_2m을 입력한 뒤 Enter 키를 누릅니다. -
트리거 바꾸기
목록의 행 맨 앞 '누르면'을 누르고 씬에 들어오면을 고르세요. 이제 씬이 열릴 때마다 요청이 나갑니다.
'누르면'을 누르고 씬에 들어오면을 고르자 문장의 앞부분이 바뀝니다. 영상: 목록의 행에서 '누르면'을 누르고 씬에 들어오면을 고르자, 문장이 '씬에 들어오면 → GET … 요청 → 기온'으로 바뀝니다. -
미리보기로 확인하기
Studio에서는 먼저 ⌘S로 저장하고, 패널 제목 줄의 세모 모양 미리보기 버튼을 누르세요. 잠시 뒤 '불러오는 중'이 25.5 같은 지금 기온으로 바뀝니다.
미리보기를 켜자 잠시 뒤 '불러오는 중'이 지금 기온으로 바뀝니다. 영상: 인터랙션 패널 제목 줄의 세모 모양 미리보기 버튼을 누르자, 잠시 뒤 '불러오는 중'이 25.5 같은 지금 기온으로 바뀝니다. -
로그 읽기
미리보기 중에는 패널 오른쪽에 로그 칸이 생깁니다. 맨 위 줄에 포인터를 올리면 줄 전체가 보입니다. 끝의 '200 · 317 B · 1102 ms'는 상태 · 크기 · 걸린 시간입니다. 흐린 줄에 '건너뜀'이 보이면 실패한 요청 다루기를 보세요. esc 키를 누르면 미리보기가 끝나고 '불러오는 중'으로 돌아옵니다.
로그 맨 위 줄에 포인터를 올리자 '200 · 317 B · 1102 ms'로 끝나는 줄 전체가 보이고, esc 키를 누르자 '불러오는 중'으로 돌아옵니다. 영상: 로그 맨 위 줄에 포인터를 올리자 '200 · 317 B · 1102 ms'로 끝나는 줄 전체가 보이고, Esc 키를 누르자 미리보기가 끝나며 '불러오는 중'으로 돌아옵니다.
값 추가 뒤의 입력은 경로 칸으로 가지 않습니다
새 줄이 생겨도 입력 위치는 경로 칸에 놓이지 않습니다. 그대로 입력하면 글자가 캔버스 단축키로 실행되어 도구가 바뀌고, Tab 키는 편집 모드를 바꿉니다. 경로 칸을 먼저 클릭한 뒤 입력하세요. 모드가 바뀌었다면 ⇧I를 눌러 인터랙션 모드로 돌아오세요.
경로 쓰는 법
| 경로 | 담기는 값 | 답의 모양 |
|---|---|---|
| $.current.temperature_2m | 25.5 · 점(.)으로 한 단계씩 들어갑니다 | {"current": {"temperature_2m": 25.5} } |
| $.items[1].name | B · 목록의 차례는 0부터 셉니다 | {"items": [{"name": "A"}, {"name": "B"}]} |
| temp | 18.4 · 맨 앞의 $.는 빼도 됩니다 | {"temp": 18.4} |
| $["max temp"] | 30 · 이름에 띄어쓰기나 점이 있으면 대괄호와 따옴표로 씁니다 | {"max temp": 30} |
| 비워 둠 | 답 전체 · 이때는 답이 JSON이 아니어도 됩니다 | 아무 글 |
값 여러 개 받기와 단위 붙이기
값을 여러 개 받으려면. 변수를 하나 더 만들고 값 추가를 한 번 더 누르세요. 새 줄에는 첫 변수가 골라져 있으니, 줄의 변수 목록에서 새 변수를 고르고 경로를 적으세요.
토큰 뒤에 단위를 붙이려면. 텍스트를 더블클릭하면 토큰이 선택된 채 열립니다. → 키로 커서를 토큰 뒤로 옮기고 °C를 입력하세요. 토큰 위에 바로 입력하면 변수와의 연결이 끊깁니다.
변수를 넣어 보내기
요청 패널을 닫았다면, 문장의 GET(메서드를 바꿨다면 그 이름)을 누르고 요청 편집을 고르세요. 패널이 다시 열립니다.
주소 · 헤더 · 본문에 변수를 넣을 수 있습니다. 변수 이름을 {{도시}}처럼 중괄호 두 겹으로 감싸 적으면, 요청이 나갈 때 그 변수의 지금 값으로 바뀝니다. 주소에서는 도메인 뒤쪽에만 넣을 수 있습니다.
값을 보내려면 메서드에서 POST · PUT · PATCH · DELETE 가운데 하나를 고르고, 본문에 보낼 내용을 적으세요. GET은 본문을 보내지 않습니다. JSON을 보낸다면 헤더 추가를 누르고 이름에 content-type, 값에 application/json을 적으세요.
URL 칸은 http · https 주소만 받습니다. 포트 번호나 사용자 이름이 든 주소, 도메인에 변수를 넣은 주소를 적으면 칸이 앞의 주소로 돌아갑니다.
AI는 요청을 새로 만들거나 고치지 않습니다. AI 어시스턴트도, AI 앱 연결로 이은 Claude · ChatGPT도 같습니다. 요청은 요청 패널에서 직접 적으세요.
요청에 적은 키는 관객도 볼 수 있습니다
요청의 주소 · 헤더 · 본문은 문서에 그대로 저장되고, 재생 링크로 보는 사람의 브라우저도 이 문서를 받습니다. 요청 패널의 안내와, 헤더를 적은 문장 아래의 '요청 헤더는 모든 관객에게 보입니다'가 그 뜻입니다. 공개되어도 되는 키만 쓰세요. 이 프로젝트가 요청을 보내는 곳은 인터랙션 패널 씬 탭 맨 아래의 '요청을 보내는 주소' 줄에 모두 나옵니다.
실패한 요청 다루기
요청이 실패하면 변수는 그전 값을 그대로 가집니다. 로그에는 흐린 줄이 생기고, 포인터를 올리면 줄 끝에 '건너뜀 (까닭)'이 보입니다. 까닭마다 할 일은 아래 표에 있고, 로그 읽는 법은 고치고 미리 보기에 있습니다.
실패했을 때 할 일은 요청 패널의 실패하면에 적습니다. 액션 추가를 누르고 액션을 고르세요. 요청이 실패하면 그 액션이 차례로 실행됩니다. 안내 씬으로 이동하거나 변수에 표시를 남기는 식입니다.
실패하면의 값 지정에는 값을 입력하는 칸이 없고, 고를 때 변수에 있던 값이 들어갑니다. 실패했을 때 '정보 없음'을 보이려면 변수 패널에서 '기온'의 값을 '정보 없음'으로 바꾸세요. 그다음 실패하면에서 '기온 변수 값 지정'을 고르고, 값을 '불러오는 중'으로 되돌리세요.
| 로그의 까닭 | 뜻 | 할 일 |
|---|---|---|
| 저장된 프로젝트에 없는 주소 | Studio에서는 요청이 SSHOW 서버를 거쳐 나가고, 서버는 저장된 프로젝트에 적힌 주소로만 보냅니다. 방금 적은 주소가 아직 저장되지 않았습니다. | ⌘S로 저장하고 미리보기를 다시 시작하세요. |
| 꺼져 있는 요청 | 이 사이트에서 요청 기능이 꺼져 있습니다. | 사이트 관리자가 요청 기능을 켜야 보낼 수 있습니다. 그때까지는 실패하면의 액션이 대신 실행되니, 그곳에 안내를 남겨 두세요. |
| 앱 업데이트가 필요한 요청 | 데스크톱 · 태블릿 앱에서 기기의 파일로 연 프로젝트입니다. 지금의 앱은 여기서 요청을 보내지 못합니다. | Studio에 있는 프로젝트로 열어 시험하세요. |
| 막힌 주소 | 내 컴퓨터나 사내망 같은 사설 주소, SSHOW 자신의 주소처럼 요청이 가면 안 되는 곳입니다. 맨 위에 'Playground' 표시가 있는 체험 화면에서는 https가 아닌 주소도 막힙니다. | 공개된 서비스의 https 주소를 쓰세요. |
| 다른 곳으로 넘어간 요청 | 서비스가 요청을 저장된 프로젝트에 없는 다른 주소로 넘겼거나, 세 번 넘게 넘겼습니다. | 주소를 브라우저에서 열어 마지막에 닿는 주소를 확인하고, 그 주소를 쓰세요. |
| 실패한 요청 | 서비스가 404 · 500 같은 실패 상태로 답했거나, 연결되지 않았습니다. 답이 왔다면 상태 코드는 그 줄 바로 아래 줄에 나옵니다. | 주소와 헤더를 확인하세요. 체험 화면에서는 요청이 브라우저에서 바로 나가므로, 브라우저의 요청을 받지 않는 서비스에는 닿지 않습니다. |
| 요청 시간 초과 | 10초 안에 답이 오지 않았습니다. | 잠시 뒤 다시 하거나 다른 서비스를 쓰세요. |
| 너무 큰 응답 | 답이 1 MB를 넘었습니다. | 필요한 값만 돌려주는 주소를 쓰세요. |
| JSON도 텍스트도 아닌 응답 | 답이 웹 페이지(HTML)나 이미지 같은 형식입니다. | JSON이나 글자로 답하는 API 주소를 쓰세요. |
| JSON이 아닌 응답 | 경로를 적었는데 답이 JSON이 아닙니다. | 경로를 비우거나 JSON으로 답하는 주소를 쓰세요. |
| 응답에 없는 값 | 경로가 가리키는 자리가 답에 없습니다. | 주소를 브라우저에서 열어 답을 보고, 이름의 대소문자와 0부터 세는 차례를 확인하세요. |
| 숫자가 아닌 값 · 색이 아닌 값 | 숫자 변수에 숫자가 아닌 값이, 색상 변수에 #FF0000 같은 색이 아닌 값이 왔습니다. | 경로를 고치거나 변수의 종류를 문자열로 바꾸세요. |
| 너무 많은 요청 | 한꺼번에 4개 넘게, 또는 1분에 60개 넘게 보냈습니다. 관객이 아주 많아 서버의 한도에 닿을 때도 나옵니다. | '기온 변수가 바뀌면'처럼 변수가 바뀔 때 시작하는 문장이 요청을 되풀이하지 않는지 보세요. |
2026년 10월 11일에 고침 · 이 페이지의 영상은 현재 에디터로 녹화했습니다.