Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i18n(ko-KR): update server-islands.mdx #10496

Merged
merged 2 commits into from
Dec 21, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions src/content/docs/ko/guides/server-islands.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,14 @@ import GenericAvatar from '../components/GenericAvatar.astro';

이 렌더링 패턴은 이식성을 고려하여 만들어졌습니다. 어떤 서버 인프라에도 의존하지 않기 때문에 Docker 컨테이너의 Node.js 서버부터 원하는 서버리스 제공업체까지 모든 호스트에서 작동합니다.

## 캐싱

서버 아일랜드의 데이터는 URL 쿼리에 암호화된 문자열 형태로 props를 전달하는 `GET` 요청을 통해 검색됩니다. 이를 통해 표준 `Cache-Control` 지시어를 사용하여 [`Cache-Control` HTTP 헤더](https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/Cache-Control)로 데이터를 캐싱할 수 있습니다.

하지만 브라우저는 실용적인 이유와 서비스 거부 문제를 방지하기 위해 [URL 길이를 최대 2048바이트로 제한합니다](https://chromium.googlesource.com/chromium/src/+/master/docs/security/url_display_guidelines/url_display_guidelines.md#url-length). 만약 쿼리 문자열로 인해 URL이 이 제한을 초과하게 되면, Astro는 대신 모든 props를 본문에 포함하는 `POST` 요청을 보냅니다.

`POST` 요청은 데이터를 제출하는 데 사용되며 데이터 무결성이나 보안 문제를 일으킬 수 있기 때문에 브라우저에서 캐싱되지 않습니다. 따라서 프로젝트에 있는 기존의 캐싱 로직이 작동하지 않게 됩니다. 가능한 한 서버 아일랜드에 필요한 props만 전달하고, 쿼리를 작게 유지하기 위해 전체 데이터 객체와 배열을 보내는 것을 피하세요.

## 서버 아일랜드의 페이지 URL에 접근

대부분의 경우 서버 아일랜드 컴포넌트는 일반 컴포넌트처럼 [props를 전달](/ko/basics/astro-components/#컴포넌트-props)하여 렌더링하는 페이지에 대한 정보를 얻을 수 있습니다.
Expand Down
Loading