๐ธ๏ธ URL ์ฐ๊ฒฐ ์ธ๋ถ์๋ฃ ๊ฐ๋ฐ ๊ฐ์ด๋
์ด ํ์ด์ง์์๋ ์ธ๋ถํ์ต์๋ฃ ์ค์ ๋ฐฉ๋ฒ ๋ฐ ๊ฐ๋ฐ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
URL ์ฐ๊ฒฐ ์ธ๋ถ์๋ฃ ์ค์ โ
์์ ์์ ์๋ฃ ์ถ๊ฐ ๋ฒํผ์ ํด๋ฆญ ํ URL ์ฐ๊ฒฐ ์ธ๋ถ์๋ฃ ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์์ ๊ฐ์ด ์ ํํ๊ณ ์๋ฃ๋ฅผ ๋ก๋ํ๋ฉด iframe ์ ํตํด ์ธ๋ถ ์๋ฃ URL ์ ์ ๋ ฅ๋ ์ฃผ์๊ฐ ๋ก๋๋ฉ๋๋ค. ์ด ๋, URL์ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ๋ฉ๋๋ค.
https://example.com?extToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9โฆ
์ฑ์ API๋ฅผ ์ด์ฉํ ์ ์ ๋ถ์ฌ ๋ฐฉ๋ฒโ
์ ์ ๊ฐ ์ ์ํ๋ฉฐ query parameter๋ก ํจ๊ป ๋๊ฒจ์ค extToken์ decode ํ๋ฉด ์๋์ ๊ฐ์ payload๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค.
{
"user_id": 917678,
"uid": null,
"progress_url": "https://api-esp-proxy.elice.io/default/progress/external?token=eyJhbGciOiJIUz...",
"token_nonce": null,
"ts": 1696408550682,
"iss": "elice-api",
"tutor_user_id": 111 # ํํฐ๋ง ๋ชจ๋์ธ ๊ฒฝ์ฐ์๋ง ํด๋น ๊ฐ์ด ์์
}
ํด๋น ๊ฐ์ค progress_url์ ์๋์ ๊ฐ์ด ์์ฒญ์ ๋ณด๋ด๋ฉด, ์ฑ์ ์ด ์๋ฃ๋ฉ๋๋ค.
-
Method: POST
-
Url: {progress_url}
-
Body
{
"score": 100
} -
Python code ์์
progress_url = decoded_token["progress_url"]
response = requests.post(
progress_url,
json={"score": reqeust.score},
)
ํํฐ๋ง ๋ชจ๋ ์ฌ๋ถ ํ์ธ ๋ฐฉ๋ฒโ
์ ์ ๊ฐ ์ ์ํ๋ฉฐ query parameter๋ก ํจ๊ป ๋๊ฒจ์ค extToken์ decode ํ๋ฉด ์๋์ ๊ฐ์ payload๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค.
{
"user_id": 917678,
"uid": null,
"progress_url": "<https://api-esp-proxy.elice.io/default/progress/external?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOm51bGwsInVzZXJfaWQiOjEzMTg5NDA0LCJvcmdhbml6YXRpb25faWQiOjM0ODQsImNvdXJzZV9pZCI6Nzg4MzksImxlY3R1cmVfcGFnZV9pZCI6NzE2NjM2N30.ULsamRseUwE-6gFI5YwQscn4RwAXMBzpWggKKlv1-1o>",
"token_nonce": null,
"ts": 1696408550682,
"iss": "elice-api",
"tutor_user_id": 48374
}
ํด๋น payload์์ tutor_user_id ๊ฐ ์กด์ฌํ๋ฉด ํํฐ๋ง ๋ชจ๋, ์กด์ฌํ์ง ์์ผ๋ฉด ํ์ ๋ชจ๋์ ๋๋ค.