Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
67906686
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
67906686
编写于
3月 03, 2017
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
use electron net for update checks
上级
76008aac
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
35 addition
and
2 deletion
+35
-2
src/vs/base/node/request.ts
src/vs/base/node/request.ts
+12
-1
src/vs/code/electron-main/main.ts
src/vs/code/electron-main/main.ts
+1
-1
src/vs/platform/request/electron-main/requestService.ts
src/vs/platform/request/electron-main/requestService.ts
+22
-0
未找到文件。
src/vs/base/node/request.ts
浏览文件 @
67906686
...
...
@@ -17,6 +17,10 @@ import { createGunzip } from 'zlib';
export
type
Agent
=
any
;
export
interface
IRawRequestFunction
{
(
options
:
http
.
RequestOptions
,
callback
?:
(
res
:
http
.
IncomingMessage
)
=>
void
):
http
.
ClientRequest
;
}
export
interface
IRequestOptions
{
type
?:
string
;
url
?:
string
;
...
...
@@ -28,6 +32,7 @@ export interface IRequestOptions {
agent
?:
Agent
;
followRedirects
?:
number
;
strictSSL
?:
boolean
;
getRawRequest
?(
options
:
IRequestOptions
):
IRawRequestFunction
;
}
export
interface
IRequestContext
{
...
...
@@ -44,12 +49,18 @@ export interface IRequestFunction {
(
options
:
IRequestOptions
):
TPromise
<
IRequestContext
>
;
}
function
getNodeRequest
(
options
:
IRequestOptions
):
IRawRequestFunction
{
const
endpoint
=
parseUrl
(
options
.
url
);
return
endpoint
.
protocol
===
'
https:
'
?
https
.
request
:
http
.
request
;
}
export
function
request
(
options
:
IRequestOptions
):
TPromise
<
IRequestContext
>
{
let
req
:
http
.
ClientRequest
;
return
new
TPromise
<
IRequestContext
>
((
c
,
e
)
=>
{
const
endpoint
=
parseUrl
(
options
.
url
);
const
rawRequest
=
endpoint
.
protocol
===
'
https:
'
?
https
.
request
:
http
.
request
;
const
getRawRequest
=
options
.
getRawRequest
||
getNodeRequest
;
const
rawRequest
=
getRawRequest
(
options
);
const
opts
:
https
.
RequestOptions
=
{
hostname
:
endpoint
.
hostname
,
port
:
endpoint
.
port
?
parseInt
(
endpoint
.
port
)
:
(
endpoint
.
protocol
===
'
https:
'
?
443
:
80
),
...
...
src/vs/code/electron-main/main.ts
浏览文件 @
67906686
...
...
@@ -44,7 +44,7 @@ import { EnvironmentService } from 'vs/platform/environment/node/environmentServ
import
{
IConfigurationService
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
ConfigurationService
}
from
'
vs/platform/configuration/node/configurationService
'
;
import
{
IRequestService
}
from
'
vs/platform/request/node/request
'
;
import
{
RequestService
}
from
'
vs/platform/request/
node
/requestService
'
;
import
{
RequestService
}
from
'
vs/platform/request/
electron-main
/requestService
'
;
import
{
IURLService
}
from
'
vs/platform/url/common/url
'
;
import
{
URLChannel
}
from
'
vs/platform/url/common/urlIpc
'
;
import
{
URLService
}
from
'
vs/platform/url/electron-main/urlService
'
;
...
...
src/vs/platform/request/electron-main/requestService.ts
0 → 100644
浏览文件 @
67906686
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'
use strict
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
{
IRequestOptions
,
IRequestContext
,
request
,
IRawRequestFunction
}
from
'
vs/base/node/request
'
;
import
{
RequestService
as
NodeRequestService
}
from
'
vs/platform/request/node/requestService
'
;
import
{
assign
}
from
'
vs/base/common/objects
'
;
import
{
net
}
from
'
electron
'
;
function
getRawRequest
(
options
:
IRequestOptions
):
IRawRequestFunction
{
return
net
.
request
as
any
as
IRawRequestFunction
;
}
export
class
RequestService
extends
NodeRequestService
{
request
(
options
:
IRequestOptions
):
TPromise
<
IRequestContext
>
{
return
super
.
request
(
options
,
options
=>
request
(
assign
({},
options
||
{},
{
getRawRequest
})));
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录