Update as upstream
This commit is contained in:
parent
79397abbeb
commit
ecdce2b214
4 changed files with 108 additions and 73 deletions
|
@ -294,14 +294,6 @@ npm 모듈 규칙에 따라 대부분의 경우 `package.json`의 `name` 필드
|
|||
현재 어플리케이션의 [로케일](https://ko.wikipedia.org/wiki/%EB%A1%9C%EC%BC%80%EC%9D%BC)을
|
||||
반환합니다.
|
||||
|
||||
### `app.resolveProxy(url, callback)`
|
||||
|
||||
* `url` URL
|
||||
* `callback` Function
|
||||
|
||||
`url`의 프록시 정보를 해석합니다. `callback`은 요청이 수행되었을 때
|
||||
`callback(proxy)` 형태로 호출됩니다.
|
||||
|
||||
### `app.addRecentDocument(path)` _OS X_ _Windows_
|
||||
|
||||
* `path` String
|
||||
|
|
|
@ -68,9 +68,15 @@ win.show();
|
|||
* `darkTheme` Boolean - 설정에 상관 없이 무조건 어두운 윈도우 테마를 사용합니다.
|
||||
몇몇 GTK+3 데스크톱 환경에서만 작동합니다.
|
||||
* `transparent` Boolean - 윈도우 창을 [투명화](frameless-window.md)합니다.
|
||||
* `type` String - 윈도우 창 종류를 지정합니다.
|
||||
사용할 수 있는 창 종류는 `desktop`, `dock`, `toolbar`, `splash`,
|
||||
`notification`와 같습니다. 이 속성은 Linux에서만 작동합니다.
|
||||
* `type` String - 특정 플랫폼에만 적용되는 윈도우 창의 종류를 지정합니다. 사용할 수
|
||||
있는 창의 종류는 다음과 같습니다:
|
||||
* Linux의 경우: `desktop`, `dock`, `toolbar`, `splash`, `notification` 종류를
|
||||
사용할 수 있습니다.
|
||||
* OS X의 경우: `desktop`, `textured` 종류를 사용할 수 있습니다. `textured` 종류는
|
||||
창을 그라디언트 형태로 표현합니다 (`NSTexturedBackgroundWindowMask`) `desktop`
|
||||
종류는 데스크탑 배경 레벨에 윈도우를 배치합니다 (`kCGDesktopWindowLevel - 1`).
|
||||
참고로 이렇게 만들어진 윈도우는 포커스, 키보드, 마우스 이벤트를 받을 수 없습니다.
|
||||
하지만 편법으로 `globalShortcut`을 통해 키 입력을 받을 수 있습니다.
|
||||
* `standardWindow` Boolean - OS X의 표준 윈도우를 텍스쳐 윈도우 대신 사용합니다.
|
||||
기본 값은 `true`입니다.
|
||||
* `titleBarStyle` String, OS X - 윈도우 타이틀 바 스타일을 지정합니다. 이 속성은
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
# session
|
||||
|
||||
`session` 객체는 [`BrowserWindow`](browser-window.md)의
|
||||
[`webContents`](web-contents.md)의 프로퍼티입니다. 다음과 같이 `BrowserWindow`
|
||||
인스턴스에서 접근할 수 있습니다:
|
||||
`session` 모듈은 새로운 `Session` 객체를 만드는데 사용할 수 있습니다.
|
||||
|
||||
또한 존재하는 [`BrowserWindow`](browser-window.md)의
|
||||
[`webContents`](web-contents.md)에서 `session` 속성으로 접근할 수도 있습니다.
|
||||
|
||||
```javascript
|
||||
var BrowserWindow = require('browser-window');
|
||||
|
@ -10,12 +11,47 @@ var BrowserWindow = require('browser-window');
|
|||
var win = new BrowserWindow({ width: 800, height: 600 });
|
||||
win.loadURL("http://github.com");
|
||||
|
||||
var session = win.webContents.session
|
||||
var ses = win.webContents.session
|
||||
```
|
||||
|
||||
## Events
|
||||
## Methods
|
||||
|
||||
### Event: 'will-download'
|
||||
`session` 모듈은 다음과 같은 메서드를 가지고 있습니다:
|
||||
|
||||
### session.fromPartition(partition)
|
||||
|
||||
* `partition` String
|
||||
|
||||
`partition` 문자열로 부터 새로운 `Session` 인스턴스를 만들어 반환합니다.
|
||||
|
||||
`partition`이 `persist:`로 시작하면 페이지는 지속성 세션을 사용하며 다른 모든 앱 내의
|
||||
페이지에서 같은 `partition`을 사용할 수 있습니다. 만약 `persist:` 접두어로 시작하지
|
||||
않으면 페이지는 인-메모리 세션을 사용합니다. `partition`을 지정하지 않으면 어플리케이션의
|
||||
기본 세션이 반환됩니다.
|
||||
|
||||
## Properties
|
||||
|
||||
`session` 모듈은 다음과 같은 속성을 가지고 있습니다:
|
||||
|
||||
### session.defaultSession
|
||||
|
||||
어플리케이션의 기본 세션 객체를 반환합니다.
|
||||
|
||||
## Class: Session
|
||||
|
||||
`session` 모듈을 사용하여 `Session` 객체를 생성할 수 있습니다:
|
||||
|
||||
```javascript
|
||||
const session = require('electron').session;
|
||||
|
||||
var ses = session.fromPartition('persist:name');
|
||||
```
|
||||
|
||||
### Instance Events
|
||||
|
||||
`Session` 객체는 다음과 같은 이벤트를 가지고 있습니다:
|
||||
|
||||
#### Event: 'will-download'
|
||||
|
||||
* `event` Event
|
||||
* `item` [DownloadItem](download-item.md)
|
||||
|
@ -34,36 +70,11 @@ session.on('will-download', function(event, item, webContents) {
|
|||
});
|
||||
```
|
||||
|
||||
### Event: 'untrusted-certificate'
|
||||
### Instance Methods
|
||||
|
||||
* `event` Event
|
||||
* `hostname` String
|
||||
* `certificate` Object
|
||||
* `data` Buffer - PEM encoded data
|
||||
* `issuerName` String
|
||||
* `callback` Function
|
||||
`Session` 객체는 다음과 같은 메서드와 속성을 가지고 있습니다:
|
||||
|
||||
`hostname`에 대한 `certificate`의 유효성 검증이 실패했을 때 발생하는 이벤트 입니다.
|
||||
인증서를 신뢰한다면 `event.preventDefault()` 와 `callback(true)`를 호출하여 기본
|
||||
동작을 방지해야 합니다.
|
||||
|
||||
```javascript
|
||||
session.on('verify-certificate', function(event, hostname, certificate, callback) {
|
||||
if (hostname == "github.com") {
|
||||
// verification logic.
|
||||
event.preventDefault();
|
||||
callback(true);
|
||||
} else {
|
||||
callback(false);
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
## Methods
|
||||
|
||||
`session` 객체는 다음과 같은 메서드와 속성을 가지고 있습니다:
|
||||
|
||||
### `session.cookies`
|
||||
#### `ses.cookies`
|
||||
|
||||
`cookies` 속성은 쿠키를 조작하는 방법을 제공합니다. 예를 들어 다음과 같이 할 수
|
||||
있습니다:
|
||||
|
@ -100,9 +111,9 @@ win.webContents.on('did-finish-load', function() {
|
|||
});
|
||||
```
|
||||
|
||||
### `session.cookies.get(details, callback)`
|
||||
#### `ses.cookies.get(details, callback)`
|
||||
|
||||
`details` Object, properties:
|
||||
`details` Object
|
||||
|
||||
* `url` String - `url`에 관련된 쿠키를 가져옵니다. 이 속성을 비워두면 모든 url의
|
||||
쿠키를 가져옵니다.
|
||||
|
@ -128,9 +139,9 @@ win.webContents.on('did-finish-load', function() {
|
|||
* `expirationDate` Double - (Option) UNIX 시간으로 표시되는 쿠키의 만료일에
|
||||
대한 초 단위 시간. 세션 쿠키는 지원되지 않음.
|
||||
|
||||
### `session.cookies.set(details, callback)`
|
||||
#### `ses.cookies.set(details, callback)`
|
||||
|
||||
`details` Object, properties:
|
||||
`details` Object
|
||||
|
||||
* `url` String - `url`에 관련된 쿠키를 가져옵니다.
|
||||
* `name` String - 쿠키의 이름입니다. 기본적으로 비워두면 생략됩니다.
|
||||
|
@ -147,7 +158,7 @@ win.webContents.on('did-finish-load', function() {
|
|||
* `callback` Function - function(error)
|
||||
* `error` Error
|
||||
|
||||
### `session.cookies.remove(details, callback)`
|
||||
#### `ses.cookies.remove(details, callback)`
|
||||
|
||||
* `details` Object, proprties:
|
||||
* `url` String - 쿠키와 관련된 URL입니다.
|
||||
|
@ -155,13 +166,13 @@ win.webContents.on('did-finish-load', function() {
|
|||
* `callback` Function - function(error)
|
||||
* `error` Error
|
||||
|
||||
### `session.clearCache(callback)`
|
||||
#### `ses.clearCache(callback)`
|
||||
|
||||
* `callback` Function - 작업이 완료되면 호출됩니다.
|
||||
|
||||
세션의 HTTP 캐시를 비웁니다.
|
||||
|
||||
### `session.clearStorageData([options, ]callback)`
|
||||
#### `ses.clearStorageData([options, ]callback)`
|
||||
|
||||
* `options` Object (optional), proprties:
|
||||
* `origin` String - `scheme://host:port`와 같은 `window.location.origin` 규칙을
|
||||
|
@ -175,7 +186,7 @@ win.webContents.on('did-finish-load', function() {
|
|||
|
||||
웹 스토리지의 데이터를 비웁니다.
|
||||
|
||||
### `session.setProxy(config, callback)`
|
||||
#### `ses.setProxy(config, callback)`
|
||||
|
||||
* `config` String
|
||||
* `callback` Function - 작업이 완료되면 호출됩니다.
|
||||
|
@ -216,14 +227,22 @@ proxy-uri = [<proxy-scheme>"://"]<proxy-host>[":"<proxy-port>]
|
|||
프록시를 다른 모든 URL에 사용합니다.
|
||||
```
|
||||
|
||||
### `session.setDownloadPath(path)`
|
||||
### `app.resolveProxy(url, callback)`
|
||||
|
||||
* `url` URL
|
||||
* `callback` Function
|
||||
|
||||
`url`의 프록시 정보를 해석합니다. `callback`은 요청이 수행되었을 때
|
||||
`callback(proxy)` 형태로 호출됩니다.
|
||||
|
||||
#### `ses.setDownloadPath(path)`
|
||||
|
||||
* `path` String - 다운로드 위치
|
||||
|
||||
다운로드 저장 위치를 지정합니다. 기본 다운로드 위치는 각 어플리케이션 데이터 디렉터리의
|
||||
`Downloads` 폴더입니다.
|
||||
|
||||
### `session.enableNetworkEmulation(options)`
|
||||
#### `ses.enableNetworkEmulation(options)`
|
||||
|
||||
* `options` Object
|
||||
* `offline` Boolean - 네트워크의 오프라인 상태 여부
|
||||
|
@ -245,6 +264,26 @@ window.webContents.session.enableNetworkEmulation({
|
|||
window.webContents.session.enableNetworkEmulation({offline: true});
|
||||
```
|
||||
|
||||
### `session.disableNetworkEmulation`
|
||||
#### `ses.disableNetworkEmulation()`
|
||||
|
||||
활성화된 `session`의 에뮬레이션을 비활성화합니다. 기본 네트워크 설정으로 돌아갑니다.
|
||||
|
||||
#### `ses.setCertificateVerifyProc(proc)`
|
||||
|
||||
* `proc` Function
|
||||
|
||||
`session`에 인증서의 유효성을 확인하는 프로세스(proc)를 등록합니다. `proc`은 서버
|
||||
인증서 유효성 검증 요청이 들어왔을 때 언제나 `proc(hostname, certificate, callback)`
|
||||
형식으로 호출됩니다. `callback(true)`을 호출하면 인증을 승인하고 `callback(false)`를
|
||||
호출하면 인증을 거부합니다.
|
||||
|
||||
`setCertificateVerifyProc(null)`을 호출하면 기본 검증 프로세스로 되돌립니다.
|
||||
|
||||
```javascript
|
||||
myWindow.webContents.session.setCertificateVerifyProc(function(hostname, cert, callback) {
|
||||
if (hostname == 'github.com')
|
||||
callback(true);
|
||||
else
|
||||
callback(false);
|
||||
});
|
||||
```
|
||||
|
|
|
@ -190,12 +190,6 @@ Returns:
|
|||
|
||||
`webContents`객체는 다음과 같은 인스턴스 메서드들을 가지고 있습니다.
|
||||
|
||||
### `webContents.session`
|
||||
|
||||
webContents에서 사용되는 `session`객체를 반환합니다.
|
||||
|
||||
[session 문서](session.md)에서 이 객체의 메서드들을 확인할 수 있습니다.
|
||||
|
||||
### `webContents.loadURL(url[, options])`
|
||||
|
||||
* `url` URL
|
||||
|
@ -645,17 +639,6 @@ Input `event`를 웹 페이지로 전송합니다.
|
|||
|
||||
프레임 프레젠테이션 이벤트들에 대한 구독을 중지합니다.
|
||||
|
||||
## Instance Properties
|
||||
|
||||
`WebContents`객체들은 다음 속성들을 가지고 있습니다:
|
||||
|
||||
### `webContents.devToolsWebContents`
|
||||
|
||||
이 `WebContents`에 대한 개발자 도구의 `WebContents`를 가져옵니다.
|
||||
|
||||
**참고:** 사용자가 절대로 이 객체를 저장해서는 안 됩니다. 개발자 도구가 닫혔을 때,
|
||||
`null`이 반환될 수 있습니다.
|
||||
|
||||
### `webContents.savePage(fullPath, saveType, callback)`
|
||||
|
||||
* `fullPath` String - 전체 파일 경로.
|
||||
|
@ -678,3 +661,18 @@ win.webContents.on('did-finish-load', function() {
|
|||
});
|
||||
});
|
||||
```
|
||||
|
||||
## Instance Properties
|
||||
|
||||
`WebContents`객체들은 다음 속성들을 가지고 있습니다:
|
||||
|
||||
### `webContents.session`
|
||||
|
||||
이 webContents에서 사용하는 [session](session.md) 객체를 반환합니다.
|
||||
|
||||
### `webContents.devToolsWebContents`
|
||||
|
||||
이 `WebContents`에 대한 개발자 도구의 `WebContents`를 가져옵니다.
|
||||
|
||||
**참고:** 사용자가 절대로 이 객체를 저장해서는 안 됩니다. 개발자 도구가 닫혔을 때,
|
||||
`null`이 반환될 수 있습니다.
|
||||
|
|
Loading…
Reference in a new issue