Skip to content

Commit

Permalink
[ko] PushSubscription.getKey(), toJSON() 신규 번역 (#22873)
Browse files Browse the repository at this point in the history
* [ko] PushSubscription.getKey() 신규 번역

* [ko] PushSubscription.toJSON() 신규 번역

* fix: slug 추가
  • Loading branch information
etoile-j authored Aug 5, 2024
1 parent a90461d commit 1164a5e
Show file tree
Hide file tree
Showing 2 changed files with 123 additions and 0 deletions.
76 changes: 76 additions & 0 deletions files/ko/web/api/pushsubscription/getkey/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
title: "PushSubscription: getKey() 메서드"
short-title: getKey()
slug: Web/API/PushSubscription/getKey
l10n:
sourceCommit: 3a91caa0ebbc5131ed75afe0e5168cd5bffc0976
---

{{APIRef("Push API")}}{{SecureContext_Header}}{{AvailableInWorkers}}

{{domxref("PushSubscription")}} 인터페이스의 `getKey()` 메서드는
클라이언트 공개 키를 나타내는 {{jsxref("ArrayBuffer")}}를 반환하며,
이는 서버로 전송되어 푸시 메시지 데이터를 암호화하는 데 사용할 수 있습니다.

## 구문

```js-nolint
getKey(name)
```

### 매개변수

- `name`

- : 클라이언트 키를 생성하는 데 사용되는 암호화 방식을 나타내는 문자열.
값은 다음과 같습니다.

- `p256dh`
- : P-256 곡선(즉, NIST secp256r1 타원 곡선) 상의
[타원 곡선 디피-헬만](https://en.wikipedia.org/wiki/Elliptic_curve_Diffie%E2%80%93Hellman) 공개 키.
그 결과 키는 ANSI X9.62 형식의 압축되지 않은 점입니다.
- `auth`
- : [웹 푸시 메시지 암호화](https://datatracker.ietf.org/doc/html/draft-ietf-webpush-encryption-08)에서 인증 비밀.

### 반환 값

{{jsxref("ArrayBuffer")}} 또는 공개 키를 찾을 수 없는 경우 `null`.

## 예제

```js
reg.pushManager.getSubscription().then((subscription) => {
// 푸시 메시지를 구독/구독 취소하는
// 모든 UI를 사용할 수 있게 합니다.

subBtn.disabled = false;

if (!subscription) {
console.log("Not yet subscribed to Push");
// 푸시를 구독하지 않았으므로,
// 사용자가 푸시를 활성화할 수 있도록 UI를 설정합니다
return;
}

// 사용자가 푸시 메시지 구독한 것을 보여주기 위해
// UI를 설정합니다
subBtn.textContent = "Unsubscribe from Push Messaging";
isPushEnabled = true;

// 구독 상태에 대한 UI 요소 설정 및
// 푸시를 통한 구독자 목록 갱신이 포함된 상태 초기화
const endpoint = subscription.endpoint;
const key = subscription.getKey("p256dh");
const auth = subscription.getKey("auth");

// ...
});
```

## 명세서

{{Specifications}}

## 브라우저 호환성

{{Compat}}
47 changes: 47 additions & 0 deletions files/ko/web/api/pushsubscription/tojson/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: "PushSubscription: toJSON() 메서드"
short-title: toJSON()
slug: Web/API/PushSubscription/toJSON
l10n:
sourceCommit: 3a91caa0ebbc5131ed75afe0e5168cd5bffc0976
---

{{APIRef("Push API")}}{{SecureContext_Header}}{{AvailableInWorkers}}

{{domxref("PushSubscription")}} 인터페이스의 `toJSON()` 메서드는
표준 직렬 변환기입니다. 구독 속성의 JSON 표현을 반환하여
유용한 단축 방법을 제공합니다.

## 구문

```js-nolint
toJSON()
```

### 매개변수

없음.

### 반환 값

JSON 객체. 이 객체는 구독 엔드포인트, `expirationTime` 그리고 공개 키를 포함하며,
각각은 `endpoint` 멤버, `expirationTime` 멤버, `keys` 멤버입니다.

## 예제

```js
navigator.serviceWorker.ready.then((reg) => {
reg.pushManager.getSubscription().then((subscription) => {
const mySubscription = subscription.toJSON();
// 구독 세부 정보로 무언가 하기
});
});
```

## 명세서

{{Specifications}}

## 브라우저 호환성

{{Compat}}

0 comments on commit 1164a5e

Please sign in to comment.