Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
beego
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
go
beego
Commits
bf6bd6b2
Commit
bf6bd6b2
authored
Apr 23, 2017
by
Faissal Elamraoui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixes #2587
Fixes warnings and errors raised by gometalinter and gosimple.
parent
3bb4ca5a
Show whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
94 additions
and
113 deletions
+94
-113
admin.go
admin.go
+4
-6
server.go
grace/server.go
+0
-1
jianliao.go
logs/jianliao.go
+0
-2
slack.go
logs/slack.go
+0
-2
smtp.go
logs/smtp.go
+0
-2
namespace.go
namespace.go
+5
-6
router.go
router.go
+25
-24
router_test.go
router_test.go
+9
-1
sess_couchbase.go
session/couchbase/sess_couchbase.go
+6
-4
ledis_session.go
session/ledis/ledis_session.go
+23
-24
sess_memcache.go
session/memcache/sess_memcache.go
+0
-1
sess_mysql.go
session/mysql/sess_mysql.go
+0
-1
sess_postgresql.go
session/postgres/sess_postgresql.go
+0
-1
sess_redis.go
session/redis/sess_redis.go
+13
-20
sess_cookie.go
session/sess_cookie.go
+4
-10
sess_ssdb.go
session/ssdb/sess_ssdb.go
+5
-6
staticfile.go
staticfile.go
+0
-2
No files found.
admin.go
View file @
bf6bd6b2
...
...
@@ -208,7 +208,7 @@ func printTree(resultList *[][]string, t *Tree) {
printTree
(
resultList
,
t
.
wildcard
)
}
for
_
,
l
:=
range
t
.
leaves
{
if
v
,
ok
:=
l
.
runObject
.
(
*
c
ontrollerInfo
);
ok
{
if
v
,
ok
:=
l
.
runObject
.
(
*
C
ontrollerInfo
);
ok
{
if
v
.
routerType
==
routerTypeBeego
{
var
result
=
[]
string
{
v
.
pattern
,
...
...
@@ -276,8 +276,8 @@ func profIndex(rw http.ResponseWriter, r *http.Request) {
// it's in "/healthcheck" pattern in admin module.
func
healthcheck
(
rw
http
.
ResponseWriter
,
req
*
http
.
Request
)
{
var
(
result
[]
string
data
=
make
(
map
[
interface
{}]
interface
{})
result
=
[]
string
{}
resultList
=
new
([][]
string
)
content
=
map
[
string
]
interface
{}{
"Fields"
:
[]
string
{
"Name"
,
"Message"
,
"Status"
},
...
...
@@ -291,17 +291,16 @@ func healthcheck(rw http.ResponseWriter, req *http.Request) {
name
,
err
.
Error
(),
}
}
else
{
result
=
[]
string
{
"success"
,
name
,
"OK"
,
}
}
*
resultList
=
append
(
*
resultList
,
result
)
}
content
[
"Data"
]
=
resultList
data
[
"Content"
]
=
content
data
[
"Title"
]
=
"Health Check"
...
...
@@ -330,7 +329,6 @@ func taskStatus(rw http.ResponseWriter, req *http.Request) {
// List Tasks
content
:=
make
(
map
[
string
]
interface
{})
resultList
:=
new
([][]
string
)
var
result
=
[]
string
{}
var
fields
=
[]
string
{
"Task Name"
,
"Task Spec"
,
...
...
@@ -339,7 +337,7 @@ func taskStatus(rw http.ResponseWriter, req *http.Request) {
""
,
}
for
tname
,
tk
:=
range
toolbox
.
AdminTaskList
{
result
=
[]
string
{
result
:
=
[]
string
{
tname
,
tk
.
GetSpec
(),
tk
.
GetStatus
(),
...
...
grace/server.go
View file @
bf6bd6b2
...
...
@@ -196,7 +196,6 @@ func (srv *Server) signalHooks(ppFlag int, sig os.Signal) {
for
_
,
f
:=
range
srv
.
SignalHooks
[
ppFlag
][
sig
]
{
f
()
}
return
}
// shutdown closes the listener so that no new connections are accepted. it also
...
...
logs/jianliao.go
View file @
bf6bd6b2
...
...
@@ -61,12 +61,10 @@ func (s *JLWriter) WriteMsg(when time.Time, msg string, level int) error {
// Flush implementing method. empty.
func
(
s
*
JLWriter
)
Flush
()
{
return
}
// Destroy implementing method. empty.
func
(
s
*
JLWriter
)
Destroy
()
{
return
}
func
init
()
{
...
...
logs/slack.go
View file @
bf6bd6b2
...
...
@@ -49,12 +49,10 @@ func (s *SLACKWriter) WriteMsg(when time.Time, msg string, level int) error {
// Flush implementing method. empty.
func
(
s
*
SLACKWriter
)
Flush
()
{
return
}
// Destroy implementing method. empty.
func
(
s
*
SLACKWriter
)
Destroy
()
{
return
}
func
init
()
{
...
...
logs/smtp.go
View file @
bf6bd6b2
...
...
@@ -138,12 +138,10 @@ func (s *SMTPWriter) WriteMsg(when time.Time, msg string, level int) error {
// Flush implementing method. empty.
func
(
s
*
SMTPWriter
)
Flush
()
{
return
}
// Destroy implementing method. empty.
func
(
s
*
SMTPWriter
)
Destroy
()
{
return
}
func
init
()
{
...
...
namespace.go
View file @
bf6bd6b2
...
...
@@ -267,13 +267,12 @@ func addPrefix(t *Tree, prefix string) {
addPrefix
(
t
.
wildcard
,
prefix
)
}
for
_
,
l
:=
range
t
.
leaves
{
if
c
,
ok
:=
l
.
runObject
.
(
*
c
ontrollerInfo
);
ok
{
if
c
,
ok
:=
l
.
runObject
.
(
*
C
ontrollerInfo
);
ok
{
if
!
strings
.
HasPrefix
(
c
.
pattern
,
prefix
)
{
c
.
pattern
=
prefix
+
c
.
pattern
}
}
}
}
// NSCond is Namespace Condition
...
...
@@ -284,16 +283,16 @@ func NSCond(cond namespaceCond) LinkNamespace {
}
// NSBefore Namespace BeforeRouter filter
func
NSBefore
(
fil
i
terList
...
FilterFunc
)
LinkNamespace
{
func
NSBefore
(
filterList
...
FilterFunc
)
LinkNamespace
{
return
func
(
ns
*
Namespace
)
{
ns
.
Filter
(
"before"
,
fil
i
terList
...
)
ns
.
Filter
(
"before"
,
filterList
...
)
}
}
// NSAfter add Namespace FinishRouter filter
func
NSAfter
(
fil
i
terList
...
FilterFunc
)
LinkNamespace
{
func
NSAfter
(
filterList
...
FilterFunc
)
LinkNamespace
{
return
func
(
ns
*
Namespace
)
{
ns
.
Filter
(
"after"
,
fil
i
terList
...
)
ns
.
Filter
(
"after"
,
filterList
...
)
}
}
...
...
router.go
View file @
bf6bd6b2
...
...
@@ -109,7 +109,8 @@ func ExceptMethodAppend(action string) {
exceptMethod
=
append
(
exceptMethod
,
action
)
}
type
controllerInfo
struct
{
// ControllerInfo holds information about the controller.
type
ControllerInfo
struct
{
pattern
string
controllerType
reflect
.
Type
methods
map
[
string
]
string
...
...
@@ -176,7 +177,7 @@ func (p *ControllerRegister) Add(pattern string, c ControllerInterface, mappingM
}
}
route
:=
&
c
ontrollerInfo
{}
route
:=
&
C
ontrollerInfo
{}
route
.
pattern
=
pattern
route
.
methods
=
methods
route
.
routerType
=
routerTypeBeego
...
...
@@ -198,7 +199,7 @@ func (p *ControllerRegister) Add(pattern string, c ControllerInterface, mappingM
}
}
func
(
p
*
ControllerRegister
)
addToRouter
(
method
,
pattern
string
,
r
*
c
ontrollerInfo
)
{
func
(
p
*
ControllerRegister
)
addToRouter
(
method
,
pattern
string
,
r
*
C
ontrollerInfo
)
{
if
!
BConfig
.
RouterCaseSensitive
{
pattern
=
strings
.
ToLower
(
pattern
)
}
...
...
@@ -335,7 +336,7 @@ func (p *ControllerRegister) AddMethod(method, pattern string, f FilterFunc) {
if
_
,
ok
:=
HTTPMETHOD
[
method
];
method
!=
"*"
&&
!
ok
{
panic
(
"not support http method: "
+
method
)
}
route
:=
&
c
ontrollerInfo
{}
route
:=
&
C
ontrollerInfo
{}
route
.
pattern
=
pattern
route
.
routerType
=
routerTypeRESTFul
route
.
runFunction
=
f
...
...
@@ -361,7 +362,7 @@ func (p *ControllerRegister) AddMethod(method, pattern string, f FilterFunc) {
// Handler add user defined Handler
func
(
p
*
ControllerRegister
)
Handler
(
pattern
string
,
h
http
.
Handler
,
options
...
interface
{})
{
route
:=
&
c
ontrollerInfo
{}
route
:=
&
C
ontrollerInfo
{}
route
.
pattern
=
pattern
route
.
routerType
=
routerTypeHandler
route
.
handler
=
h
...
...
@@ -396,7 +397,7 @@ func (p *ControllerRegister) AddAutoPrefix(prefix string, c ControllerInterface)
controllerName
:=
strings
.
TrimSuffix
(
ct
.
Name
(),
"Controller"
)
for
i
:=
0
;
i
<
rt
.
NumMethod
();
i
++
{
if
!
utils
.
InSlice
(
rt
.
Method
(
i
)
.
Name
,
exceptMethod
)
{
route
:=
&
c
ontrollerInfo
{}
route
:=
&
C
ontrollerInfo
{}
route
.
routerType
=
routerTypeBeego
route
.
methods
=
map
[
string
]
string
{
"*"
:
rt
.
Method
(
i
)
.
Name
}
route
.
controllerType
=
ct
...
...
@@ -502,7 +503,7 @@ func (p *ControllerRegister) geturl(t *Tree, url, controllName, methodName strin
}
}
for
_
,
l
:=
range
t
.
leaves
{
if
c
,
ok
:=
l
.
runObject
.
(
*
c
ontrollerInfo
);
ok
{
if
c
,
ok
:=
l
.
runObject
.
(
*
C
ontrollerInfo
);
ok
{
if
c
.
routerType
==
routerTypeBeego
&&
strings
.
HasSuffix
(
path
.
Join
(
c
.
controllerType
.
PkgPath
(),
c
.
controllerType
.
Name
()),
controllName
)
{
find
:=
false
...
...
@@ -629,7 +630,7 @@ func (p *ControllerRegister) ServeHTTP(rw http.ResponseWriter, r *http.Request)
runRouter
reflect
.
Type
findRouter
bool
runMethod
string
routerInfo
*
c
ontrollerInfo
routerInfo
*
C
ontrollerInfo
isRunnable
bool
)
context
:=
p
.
pool
.
Get
()
.
(
*
beecontext
.
Context
)
...
...
@@ -670,7 +671,7 @@ func (p *ControllerRegister) ServeHTTP(rw http.ResponseWriter, r *http.Request)
goto
Admin
}
if
r
.
Method
!=
"GET"
&&
r
.
Method
!=
"HEAD"
{
if
r
.
Method
!=
http
.
MethodGet
&&
r
.
Method
!=
http
.
MethodHead
{
if
BConfig
.
CopyRequestBody
&&
!
context
.
Input
.
IsUpload
()
{
context
.
Input
.
CopyBody
(
BConfig
.
MaxMemory
)
}
...
...
@@ -743,11 +744,11 @@ func (p *ControllerRegister) ServeHTTP(rw http.ResponseWriter, r *http.Request)
}
else
{
runRouter
=
routerInfo
.
controllerType
method
:=
r
.
Method
if
r
.
Method
==
"POST"
&&
context
.
Input
.
Query
(
"_method"
)
==
"PUT"
{
method
=
"PUT"
if
r
.
Method
==
http
.
MethodPost
&&
context
.
Input
.
Query
(
"_method"
)
==
http
.
MethodPost
{
method
=
http
.
MethodPut
}
if
r
.
Method
==
"POST"
&&
context
.
Input
.
Query
(
"_method"
)
==
"DELETE"
{
method
=
"DELETE"
if
r
.
Method
==
http
.
MethodPost
&&
context
.
Input
.
Query
(
"_method"
)
==
http
.
MethodDelete
{
method
=
http
.
MethodDelete
}
if
m
,
ok
:=
routerInfo
.
methods
[
method
];
ok
{
runMethod
=
m
...
...
@@ -777,8 +778,8 @@ func (p *ControllerRegister) ServeHTTP(rw http.ResponseWriter, r *http.Request)
//if XSRF is Enable then check cookie where there has any cookie in the request's cookie _csrf
if
BConfig
.
WebConfig
.
EnableXSRF
{
execController
.
XSRFToken
()
if
r
.
Method
==
"POST"
||
r
.
Method
==
"DELETE"
||
r
.
Method
==
"PUT"
||
(
r
.
Method
==
"POST"
&&
(
context
.
Input
.
Query
(
"_method"
)
==
"DELETE"
||
context
.
Input
.
Query
(
"_method"
)
==
"PUT"
))
{
if
r
.
Method
==
http
.
MethodPost
||
r
.
Method
==
http
.
MethodDelete
||
r
.
Method
==
http
.
MethodPut
||
(
r
.
Method
==
http
.
MethodPost
&&
(
context
.
Input
.
Query
(
"_method"
)
==
http
.
MethodDelete
||
context
.
Input
.
Query
(
"_method"
)
==
http
.
MethodPut
))
{
execController
.
CheckXSRFCookie
()
}
}
...
...
@@ -788,19 +789,19 @@ func (p *ControllerRegister) ServeHTTP(rw http.ResponseWriter, r *http.Request)
if
!
context
.
ResponseWriter
.
Started
{
//exec main logic
switch
runMethod
{
case
"GET"
:
case
http
.
MethodGet
:
execController
.
Get
()
case
"POST"
:
case
http
.
MethodPost
:
execController
.
Post
()
case
"DELETE"
:
case
http
.
MethodDelete
:
execController
.
Delete
()
case
"PUT"
:
case
http
.
MethodPut
:
execController
.
Put
()
case
"HEAD"
:
case
http
.
MethodHead
:
execController
.
Head
()
case
"PATCH"
:
case
http
.
MethodPatch
:
execController
.
Patch
()
case
"OPTIONS"
:
case
http
.
MethodOptions
:
execController
.
Options
()
default
:
if
!
execController
.
HandlerFunc
(
runMethod
)
{
...
...
@@ -887,7 +888,7 @@ Admin:
}
// FindRouter Find Router info for URL
func
(
p
*
ControllerRegister
)
FindRouter
(
context
*
beecontext
.
Context
)
(
routerInfo
*
c
ontrollerInfo
,
isFind
bool
)
{
func
(
p
*
ControllerRegister
)
FindRouter
(
context
*
beecontext
.
Context
)
(
routerInfo
*
C
ontrollerInfo
,
isFind
bool
)
{
var
urlPath
=
context
.
Input
.
URL
()
if
!
BConfig
.
RouterCaseSensitive
{
urlPath
=
strings
.
ToLower
(
urlPath
)
...
...
@@ -895,7 +896,7 @@ func (p *ControllerRegister) FindRouter(context *beecontext.Context) (routerInfo
httpMethod
:=
context
.
Input
.
Method
()
if
t
,
ok
:=
p
.
routers
[
httpMethod
];
ok
{
runObject
:=
t
.
Match
(
urlPath
,
context
)
if
r
,
ok
:=
runObject
.
(
*
c
ontrollerInfo
);
ok
{
if
r
,
ok
:=
runObject
.
(
*
C
ontrollerInfo
);
ok
{
return
r
,
true
}
}
...
...
router_test.go
View file @
bf6bd6b2
...
...
@@ -654,32 +654,40 @@ func TestFilterFinishRouterMulti(t *testing.T) {
}
func
beegoFilterNoOutput
(
ctx
*
context
.
Context
)
{
return
}
func
beegoBeforeRouter1
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|BeforeRouter1"
)
}
func
beegoBeforeRouter2
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|BeforeRouter2"
)
}
func
beegoBeforeExec1
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|BeforeExec1"
)
}
func
beegoBeforeExec2
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|BeforeExec2"
)
}
func
beegoAfterExec1
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|AfterExec1"
)
}
func
beegoAfterExec2
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|AfterExec2"
)
}
func
beegoFinishRouter1
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|FinishRouter1"
)
}
func
beegoFinishRouter2
(
ctx
*
context
.
Context
)
{
ctx
.
WriteString
(
"|FinishRouter2"
)
}
func
beegoResetParams
(
ctx
*
context
.
Context
)
{
ctx
.
ResponseWriter
.
Header
()
.
Set
(
"splat"
,
ctx
.
Input
.
Param
(
":splat"
))
}
...
...
session/couchbase/sess_couchbase.go
View file @
bf6bd6b2
...
...
@@ -155,10 +155,13 @@ func (cp *Provider) SessionInit(maxlifetime int64, savePath string) error {
func
(
cp
*
Provider
)
SessionRead
(
sid
string
)
(
session
.
Store
,
error
)
{
cp
.
b
=
cp
.
getBucket
()
var
doc
[]
byte
var
(
kv
map
[
interface
{}]
interface
{}
err
error
doc
[]
byte
)
err
:=
cp
.
b
.
Get
(
sid
,
&
doc
)
var
kv
map
[
interface
{}]
interface
{}
err
=
cp
.
b
.
Get
(
sid
,
&
doc
)
if
doc
==
nil
{
kv
=
make
(
map
[
interface
{}]
interface
{})
}
else
{
...
...
@@ -230,7 +233,6 @@ func (cp *Provider) SessionDestroy(sid string) error {
// SessionGC Recycle
func
(
cp
*
Provider
)
SessionGC
()
{
return
}
// SessionAll return all active session
...
...
session/ledis/ledis_session.go
View file @
bf6bd6b2
...
...
@@ -12,8 +12,10 @@ import (
"github.com/siddontang/ledisdb/ledis"
)
var
ledispder
=
&
Provider
{}
var
c
*
ledis
.
DB
var
(
ledispder
=
&
Provider
{}
c
*
ledis
.
DB
)
// SessionStore ledis session store
type
SessionStore
struct
{
...
...
@@ -97,27 +99,36 @@ func (lp *Provider) SessionInit(maxlifetime int64, savePath string) error {
}
cfg
:=
new
(
config
.
Config
)
cfg
.
DataDir
=
lp
.
savePath
nowLedis
,
err
:=
ledis
.
Open
(
cfg
)
c
,
err
=
nowLedis
.
Select
(
lp
.
db
)
var
ledisInstance
*
ledis
.
Ledis
ledisInstance
,
err
=
ledis
.
Open
(
cfg
)
if
err
!=
nil
{
println
(
err
)
return
nil
return
err
}
return
nil
c
,
err
=
ledisInstance
.
Select
(
lp
.
db
)
return
err
}
// SessionRead read ledis session by sid
func
(
lp
*
Provider
)
SessionRead
(
sid
string
)
(
session
.
Store
,
error
)
{
kvs
,
err
:=
c
.
Get
([]
byte
(
sid
))
var
kv
map
[
interface
{}]
interface
{}
var
(
kv
map
[
interface
{}]
interface
{}
kvs
[]
byte
err
error
)
if
kvs
,
err
=
c
.
Get
([]
byte
(
sid
));
err
!=
nil
{
return
nil
,
err
}
if
len
(
kvs
)
==
0
{
kv
=
make
(
map
[
interface
{}]
interface
{})
}
else
{
kv
,
err
=
session
.
DecodeGob
(
kvs
)
if
err
!=
nil
{
if
kv
,
err
=
session
.
DecodeGob
(
kvs
);
err
!=
nil
{
return
nil
,
err
}
}
ls
:=
&
SessionStore
{
sid
:
sid
,
values
:
kv
,
maxlifetime
:
lp
.
maxlifetime
}
return
ls
,
nil
}
...
...
@@ -142,18 +153,7 @@ func (lp *Provider) SessionRegenerate(oldsid, sid string) (session.Store, error)
c
.
Set
([]
byte
(
sid
),
data
)
c
.
Expire
([]
byte
(
sid
),
lp
.
maxlifetime
)
}
kvs
,
err
:=
c
.
Get
([]
byte
(
sid
))
var
kv
map
[
interface
{}]
interface
{}
if
len
(
kvs
)
==
0
{
kv
=
make
(
map
[
interface
{}]
interface
{})
}
else
{
kv
,
err
=
session
.
DecodeGob
(
kvs
)
if
err
!=
nil
{
return
nil
,
err
}
}
ls
:=
&
SessionStore
{
sid
:
sid
,
values
:
kv
,
maxlifetime
:
lp
.
maxlifetime
}
return
ls
,
nil
return
lp
.
SessionRead
(
sid
)
}
// SessionDestroy delete ledis session by id
...
...
@@ -164,7 +164,6 @@ func (lp *Provider) SessionDestroy(sid string) error {
// SessionGC Impelment method, no used.
func
(
lp
*
Provider
)
SessionGC
()
{
return
}
// SessionAll return all active session
...
...
session/memcache/sess_memcache.go
View file @
bf6bd6b2
...
...
@@ -215,7 +215,6 @@ func (rp *MemProvider) connectInit() error {
// SessionGC Impelment method, no used.
func
(
rp
*
MemProvider
)
SessionGC
()
{
return
}
// SessionAll return all activeSession
...
...
session/mysql/sess_mysql.go
View file @
bf6bd6b2
...
...
@@ -209,7 +209,6 @@ func (mp *Provider) SessionGC() {
c
:=
mp
.
connectInit
()
c
.
Exec
(
"DELETE from "
+
TableName
+
" where session_expiry < ?"
,
time
.
Now
()
.
Unix
()
-
mp
.
maxlifetime
)
c
.
Close
()
return
}
// SessionAll count values in mysql session
...
...
session/postgres/sess_postgresql.go
View file @
bf6bd6b2
...
...
@@ -224,7 +224,6 @@ func (mp *Provider) SessionGC() {
c
:=
mp
.
connectInit
()
c
.
Exec
(
"DELETE from session where EXTRACT(EPOCH FROM (current_timestamp - session_expiry)) > $1"
,
mp
.
maxlifetime
)
c
.
Close
()
return
}
// SessionAll count values in postgresql session
...
...
session/redis/sess_redis.go
View file @
bf6bd6b2
...
...
@@ -155,7 +155,7 @@ func (rp *Provider) SessionInit(maxlifetime int64, savePath string) error {
return
nil
,
err
}
if
rp
.
password
!=
""
{
if
_
,
err
:
=
c
.
Do
(
"AUTH"
,
rp
.
password
);
err
!=
nil
{
if
_
,
err
=
c
.
Do
(
"AUTH"
,
rp
.
password
);
err
!=
nil
{
c
.
Close
()
return
nil
,
err
}
...
...
@@ -176,13 +176,20 @@ func (rp *Provider) SessionRead(sid string) (session.Store, error) {
c
:=
rp
.
poollist
.
Get
()
defer
c
.
Close
()
kvs
,
err
:=
redis
.
String
(
c
.
Do
(
"GET"
,
sid
))
var
kv
map
[
interface
{}]
interface
{}
var
(
kv
map
[
interface
{}]
interface
{}
kvs
string
err
error
)
if
kvs
,
err
=
redis
.
String
(
c
.
Do
(
"GET"
,
sid
));
err
!=
nil
{
return
nil
,
err
}
if
len
(
kvs
)
==
0
{
kv
=
make
(
map
[
interface
{}]
interface
{})
}
else
{
kv
,
err
=
session
.
DecodeGob
([]
byte
(
kvs
))
if
err
!=
nil
{
if
kv
,
err
=
session
.
DecodeGob
([]
byte
(
kvs
));
err
!=
nil
{
return
nil
,
err
}
}
...
...
@@ -216,20 +223,7 @@ func (rp *Provider) SessionRegenerate(oldsid, sid string) (session.Store, error)
c
.
Do
(
"RENAME"
,
oldsid
,
sid
)
c
.
Do
(
"EXPIRE"
,
sid
,
rp
.
maxlifetime
)
}
kvs
,
err
:=
redis
.
String
(
c
.
Do
(
"GET"
,
sid
))
var
kv
map
[
interface
{}]
interface
{}
if
len
(
kvs
)
==
0
{
kv
=
make
(
map
[
interface
{}]
interface
{})
}
else
{
kv
,
err
=
session
.
DecodeGob
([]
byte
(
kvs
))
if
err
!=
nil
{
return
nil
,
err
}
}
rs
:=
&
SessionStore
{
p
:
rp
.
poollist
,
sid
:
sid
,
values
:
kv
,
maxlifetime
:
rp
.
maxlifetime
}
return
rs
,
nil
return
rp
.
SessionRead
(
sid
)
}
// SessionDestroy delete redis session by id
...
...
@@ -243,7 +237,6 @@ func (rp *Provider) SessionDestroy(sid string) error {
// SessionGC Impelment method, no used.
func
(
rp
*
Provider
)
SessionGC
()
{
return
}
// SessionAll return all activeSession
...
...
session/sess_cookie.go
View file @
bf6bd6b2
...
...
@@ -74,21 +74,16 @@ func (st *CookieSessionStore) SessionID() string {
// SessionRelease Write cookie session to http response cookie
func
(
st
*
CookieSessionStore
)
SessionRelease
(
w
http
.
ResponseWriter
)
{
str
,
err
:=
encodeCookie
(
cookiepder
.
block
,
cookiepder
.
config
.
SecurityKey
,
cookiepder
.
config
.
SecurityName
,
st
.
values
)
if
err
!=
nil
{
return
}
encodedCookie
,
err
:=
encodeCookie
(
cookiepder
.
block
,
cookiepder
.
config
.
SecurityKey
,
cookiepder
.
config
.
SecurityName
,
st
.
values
)
if
err
==
nil
{
cookie
:=
&
http
.
Cookie
{
Name
:
cookiepder
.
config
.
CookieName
,
Value
:
url
.
QueryEscape
(
str
),
Value
:
url
.
QueryEscape
(
encodedCookie
),
Path
:
"/"
,
HttpOnly
:
true
,
Secure
:
cookiepder
.
config
.
Secure
,
MaxAge
:
cookiepder
.
config
.
Maxage
}
http
.
SetCookie
(
w
,
cookie
)
return
}
}
type
cookieConfig
struct
{
...
...
@@ -166,7 +161,6 @@ func (pder *CookieProvider) SessionDestroy(sid string) error {
// SessionGC Implement method, no used.
func
(
pder
*
CookieProvider
)
SessionGC
()
{
return
}
// SessionAll Implement method, return 0.
...
...
session/ssdb/sess_ssdb.go
View file @
bf6bd6b2
...
...
@@ -30,13 +30,13 @@ func (p *SsdbProvider) connectInit() error {
}
func
(
p
*
SsdbProvider
)
SessionInit
(
maxLifetime
int64
,
savePath
string
)
error
{
var
e
error
=
nil
p
.
maxLifetime
=
maxLifetime
address
:=
strings
.
Split
(
savePath
,
":"
)
p
.
host
=
address
[
0
]
p
.
port
,
e
=
strconv
.
Atoi
(
address
[
1
])
if
e
!=
nil
{
return
e
var
err
error
if
p
.
port
,
err
=
strconv
.
Atoi
(
address
[
1
]);
err
!=
nil
{
return
err
}
return
p
.
connectInit
()
}
...
...
@@ -78,8 +78,8 @@ func (p *SsdbProvider) SessionExist(sid string) bool {
return
false
}
return
true
}
func
(
p
*
SsdbProvider
)
SessionRegenerate
(
oldsid
,
sid
string
)
(
session
.
Store
,
error
)
{
//conn.Do("setx", key, v, ttl)
if
p
.
client
==
nil
{
...
...
@@ -123,7 +123,6 @@ func (p *SsdbProvider) SessionDestroy(sid string) error {
}
func
(
p
*
SsdbProvider
)
SessionGC
()
{
return
}
func
(
p
*
SsdbProvider
)
SessionAll
()
int
{
...
...
staticfile.go
View file @
bf6bd6b2
...
...
@@ -90,8 +90,6 @@ func serverStaticRouter(ctx *context.Context) {
}
http
.
ServeContent
(
ctx
.
ResponseWriter
,
ctx
.
Request
,
filePath
,
sch
.
modTime
,
sch
)
return
}
type
serveContentHolder
struct
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment