Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
凌波微步_大先生
dashboard
提交
35226aa4
D
dashboard
项目概览
凌波微步_大先生
/
dashboard
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dashboard
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
35226aa4
编写于
6月 28, 2016
作者:
S
Sebastian Florek
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Enable gzip HTTP compression
上级
848b1692
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
53 addition
and
2 deletion
+53
-2
src/app/backend/dashboard.go
src/app/backend/dashboard.go
+2
-2
src/app/backend/handler/apihandler.go
src/app/backend/handler/apihandler.go
+1
-0
src/app/backend/handler/gziphandler.go
src/app/backend/handler/gziphandler.go
+50
-0
未找到文件。
src/app/backend/dashboard.go
浏览文件 @
35226aa4
...
...
@@ -19,12 +19,12 @@ import (
"fmt"
"log"
"net/http"
"os"
// TODO(maciaszczykm): Avoid using dot-imports.
.
"github.com/kubernetes/dashboard/client"
.
"github.com/kubernetes/dashboard/handler"
"github.com/spf13/pflag"
"os"
)
var
(
...
...
@@ -67,7 +67,7 @@ func main() {
// Run a HTTP server that serves static public files from './public' and handles API calls.
// TODO(bryk): Disable directory listing.
http
.
Handle
(
"/"
,
CreateLocaleHandler
(
))
http
.
Handle
(
"/"
,
MakeGzipHandler
(
CreateLocaleHandler
()
))
http
.
Handle
(
"/api/"
,
CreateHttpApiHandler
(
apiserverClient
,
heapsterRESTClient
,
config
))
// TODO(maciaszczykm): Move to /appConfig.json as it was discussed in #640.
http
.
Handle
(
"/api/appConfig.json"
,
AppHandler
(
ConfigHandler
))
...
...
src/app/backend/handler/apihandler.go
浏览文件 @
35226aa4
...
...
@@ -94,6 +94,7 @@ func CreateHttpApiHandler(client *client.Client, heapsterClient HeapsterClient,
client
.
AppsClient
.
RESTClient
,
client
.
BatchClient
.
RESTClient
)
apiHandler
:=
ApiHandler
{
client
,
heapsterClient
,
clientConfig
,
verber
}
wsContainer
:=
restful
.
NewContainer
()
wsContainer
.
EnableContentEncoding
(
true
)
apiV1Ws
:=
new
(
restful
.
WebService
)
apiV1Ws
.
Filter
(
wsLogger
)
...
...
src/app/backend/handler/gziphandler.go
0 → 100644
浏览文件 @
35226aa4
// Copyright 2015 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package
handler
import
(
"io"
"net/http"
"strings"
"compress/gzip"
)
type
gzipResponseWriter
struct
{
io
.
Writer
http
.
ResponseWriter
}
// Use the Writer part of gzipResponseWriter to write the output.
func
(
w
gzipResponseWriter
)
Write
(
b
[]
byte
)
(
int
,
error
)
{
return
w
.
Writer
.
Write
(
b
)
}
// MakeGzipHandler adds support for gzip compression for given handler
func
MakeGzipHandler
(
handler
http
.
Handler
)
http
.
Handler
{
return
http
.
HandlerFunc
(
func
(
w
http
.
ResponseWriter
,
r
*
http
.
Request
)
{
// Check if the client can accept the gzip encoding.
if
!
strings
.
Contains
(
r
.
Header
.
Get
(
"Accept-Encoding"
),
"gzip"
)
{
handler
.
ServeHTTP
(
w
,
r
)
return
}
// Set the HTTP header indicating encoding.
w
.
Header
()
.
Set
(
"Content-Encoding"
,
"gzip"
)
gz
:=
gzip
.
NewWriter
(
w
)
defer
gz
.
Close
()
gzw
:=
gzipResponseWriter
{
Writer
:
gz
,
ResponseWriter
:
w
}
handler
.
ServeHTTP
(
gzw
,
r
)
})
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录