1
0
mirror of https://github.com/astaxie/beego.git synced 2024-11-25 23:31:29 +00:00
Commit Graph

279 Commits

Author SHA1 Message Date
astaxie
2aa50c240f Merge pull request #1486 from KilledKenny/oomDos
Added MaxMemory limit to CopyBody() Supersedes #1484
2015-12-16 23:44:42 +08:00
astaxie
29752e2575 refactor router 2015-12-16 23:11:03 +08:00
Simon Rawet
52c4c1fb98 Added MaxMemory limit to CopyBody()
Beego only uses the MaxMemory flag when using go's built in functions
for parsing forms. However the CopyBody() function have no limit an will
coppy anny amount of data into memory using ioutil.ReedAll() on the
request body whitout anny size validation or limit.

This fix wrapps input.Requst.Body in a LimitedReader using the same
memory limit as ParseFormOrMulitForm()
2015-12-16 10:37:21 +01:00
astaxie
2b651fbae2 reuse map in tree.Match 2015-12-11 13:51:01 +08:00
astaxie
80bc372f17 pool.Put 2015-12-11 00:20:17 +08:00
astaxie
f70f338025 use sync.Pool to reuse Context 2015-12-10 21:59:54 +08:00
astaxie
be60f47488 Merge pull request #1455 from nkbai/develop
windows下静态文件映射找不到问题以及 grace init延后
2015-12-09 23:44:45 +08:00
astaxie
d1bba02958 refact beego config 2015-12-09 23:35:04 +08:00
nkbai
ff0762cc19 Merge remote-tracking branch 'upstream/develop' into develop 2015-12-03 15:50:21 +08:00
nkbai
6aaca2eca8 router.go Header 毫无用处
context/output.go 简化一下代码,更清晰
2015-11-26 14:56:39 +08:00
JessonChan
7ef9b3d55b runnable typo fixed 2015-11-10 14:07:26 +08:00
astaxie
fd4630c6dd impove the ResponseWriter. fix #1410 2015-11-04 23:52:42 +08:00
astaxie
912abe3272 fix #1388 2015-10-12 21:26:18 +08:00
JessonChan
caf3714495 revert exceptMethod 2015-09-19 05:41:10 +08:00
JessonChan
983bac986a runFunction camel name 2015-09-18 18:34:07 +08:00
JessonChan
56032c67af runFunction camel name 2015-09-18 18:31:06 +08:00
JessonChan
40cb8e0cf1 use reflect to ensure all methods been except 2015-09-18 18:18:12 +08:00
astaxie
ff5b09fc19 golint context 2015-09-10 15:31:09 +08:00
astaxie
c11740b647 make golint happy router.go 2015-09-08 22:01:13 +08:00
astaxie
67b36d7c48 make golint happy 2015-09-08 21:41:38 +08:00
astaxie
61570ac2f7 make golint happy with controller.go 2015-09-08 10:43:42 +08:00
astaxie
f28a941e26 make golint happy and also make the config readable 2015-09-07 23:19:42 +08:00
陈小玉
506f54a080 Update router.go, add Flush for responseWriter 2015-08-19 15:23:50 +08:00
JessonChan
b26ef5b2e5 typo fixed
registor==>register
innner ==> inner
2015-07-27 08:44:58 +08:00
MrLee.Kun
87e8bcc9be fix FilterHandler crash issue
Filter Handler will crash with error assignment to entry in nil map , params from function Tree.Match() maybe nil.
2015-06-19 11:19:35 +08:00
astaxie
ba1232dfaf filter should be always the same 2015-06-14 18:35:46 +08:00
astaxie
b275d7c6f5 Revert "Revert "fix multiple filters execute issue"" 2015-06-14 01:14:33 +08:00
astaxie
fc11169ee3 Revert "fix multiple filters execute issue" 2015-06-14 01:13:34 +08:00
MrLee.Kun
2af0c569a5 The last filterFunc with returnOnOutput=ture won't be executed
ex:
	beego.InsertFilter("/*", beego.BeforeExec, FilterLoginCheck1,false)
	beego.InsertFilter("/*", beego.BeforeExec, FilterLoginCheck2)

In function  FilterLoginCheck1 , I'll write data via ResponseWriter, and w.started = true
FilterLoginCheck2 won't be executed, it should be.
2015-06-14 01:02:41 +08:00
astaxie
e619d83990 fix the filter router issues 2015-06-13 12:47:01 +08:00
MrLee.Kun
491238ce7d Don't overwrite the params from function ValidRouter
just add new params to context.Input.Params
2015-06-13 01:04:46 +08:00
astaxie
4d70b22f96 Merge pull request #1157 from ziyel/master
Let filter function get more params info from ctx.Input.Params
2015-06-11 14:38:19 +08:00
ziyel
d943d16d52 gofmt 2015-06-10 21:26:04 +08:00
astaxie
364cacf659 record the critical logs in Prod 2015-06-08 22:00:28 +08:00
astaxie
26130a5df6 fix #1073 2015-05-25 09:10:35 +08:00
astaxie
1d8afdc9c9 gofmt -s & go_vet 2015-05-25 09:10:34 +08:00
ziyel
9bb9855153 Let filter function get more params info from ctx.Input.Params 2015-05-18 14:42:18 +08:00
astaxie
3aceaf8838 error support controller 2015-02-26 23:34:43 +08:00
astaxie
3caba06189 Merge pull request #967 from athurg/support_all_type_on_urlfor
Add all type support for UrlFor’s params
2014-12-18 21:14:44 +08:00
Jianbo Feng
e34f8479bb Add all type support for UrlFor’s params 2014-12-17 15:52:48 +08:00
astaxie
9c665afc04 improve the error tips 2014-12-08 14:57:45 +08:00
astaxie
f96245786a fix #912 2014-11-08 15:10:47 +08:00
astaxie
76522d43af simple the session 2014-11-04 19:07:49 +08:00
astaxie
c4d8e4a244 fix #759 2014-11-04 15:29:33 +08:00
astaxie
8d797a4a5e file the static filter 2014-11-03 16:14:40 +08:00
astaxie
fda841208d fix #893 2014-10-30 16:05:48 +08:00
WithGJR
efc14a1e8d fix router bug with more better way 2014-10-16 18:58:12 +08:00
WithGJR
fa1281002e fix router bug: when the request is PUT or DELETE, router can't find the actual route and will throw 404 page to user 2014-10-16 18:26:01 +08:00
Bill Davis
1ba7847913 Changing check from nil to len based on slice 2014-10-08 09:21:34 -04:00
Bill Davis
b6f789c497 Changes to handle multi filters on execution pt 2014-10-07 16:35:30 -04:00
astaxie
aae89576c6 fix #814 2014-10-01 22:31:44 +08:00
astaxie
a907a86476 fix #814 2014-10-01 22:28:49 +08:00
astaxie
3a5de83ec2 beego: support router case sensitive 2014-09-28 22:10:43 +08:00
astaxie
f267ee8a12 fix the same name controller for UrlFor 2014-09-23 00:26:07 +08:00
astaxie
6eee223352 beego: fix the Upper for the _method value 2014-09-03 09:25:34 +08:00
Francois
bc4780091b Proposal for adding a ":" for stack trace printout
Mainly useful for Sublime users with goto anything.
2014-08-30 21:27:21 +02:00
astaxie
7f977a0c8c beego: change the colour 2014-08-20 11:54:25 +08:00
astaxie
aaabeff44f change the route info 2014-08-20 10:59:38 +08:00
astaxie
a144769515 update the documents & comments 2014-08-18 16:41:43 +08:00
astaxie
e07d780dcf update the router info 2014-08-18 15:00:27 +08:00
astaxie
986e91b7d6 beego: update the debug info rules 2014-08-18 14:35:43 +08:00
Francois
75904effd9 Makes more sense to Use Debug instead of Info? 2014-08-15 21:11:16 +02:00
liulixiang1988
118e07158e improve the 'geturl'
If we have a url mapping like this:
`beego.Router(“/test”, &controllers.WeightController{},
"get:GetDetails”)`
when u use `UrlFor(“WeightController.GetDetails”, “foo”, 1, “bar”, 2 `,
it should return `/test?foo=1&bar=2` rather than `/test`.
2014-08-11 22:19:59 +08:00
astaxie
885c0678ff move filter wrong http method 2014-08-04 16:21:34 +08:00
astaxie
474a16a7a0 beego: improve the static file server 2014-08-04 15:31:27 +08:00
astaxie
d17f107fc4 beego: fix #702 auto render 2014-07-18 13:29:54 +08:00
astaxie
19c3a5b41c beego: improve the router debug infomation 2014-07-09 09:38:36 +08:00
Christoph Portmann
3bb4d6f013 beego/context: Fix ignored Header in case SetStatus has been called before 2014-07-08 23:24:47 +03:00
astaxie
fefd8ddb5b beego: update licence& fix #669 2014-07-03 23:40:21 +08:00
astaxie
14dee37a21 beego: autorouter params 2014-07-01 16:55:23 +08:00
astaxie
34936dde35 Merge branch 'master' into develop 2014-06-30 23:50:45 +08:00
ljyf5593
ac96c2b15e beego: fix #657
路由地址不区分大小写问题
2014-06-27 11:06:29 +08:00
astaxie
0f170a80da update the comments fix #658 2014-06-25 10:39:37 +08:00
astaxie
af4f153830 beego: update the router rule for *
* not match the empty route
2014-06-21 11:44:24 +08:00
astaxie
085c362ffb beego:fix router expge 2014-06-18 23:32:47 +08:00
astaxie
117904be73 beego:fix the some regexp routes to different func 2014-06-12 23:08:05 +08:00
astaxie
c13141b8bf beego:fix when user defined function equal to HTTP 2014-06-11 22:45:54 +08:00
astaxie
3db9633ebd remove websocket logic because not support handler 2014-06-11 11:12:17 +08:00
astaxie
6809c97611 beego: improve performance 2014-06-11 01:11:32 +08:00
astaxie
4786fb0948 beego:fix typo NewControllerRegister 2014-06-10 20:12:57 +08:00
astaxie
107a7a21c0 beego: dev mode print request router & pattern 2014-06-10 18:09:07 +08:00
astaxie
f7b01aab13 beego: modify the filter sequence 2014-06-10 11:02:41 +08:00
astaxie
2570f075d9 beego:change ControllerComments exported 2014-06-09 17:46:13 +08:00
astaxie
21cb8ea4a3 beego:AST code 2014-06-09 17:33:04 +08:00
astaxie
6c8a7f1382 beego: router change to method Tree 2014-06-09 10:11:37 +08:00
astaxie
e00eab7f49 beego: change to tree 2014-06-08 20:24:07 +08:00
astaxie
5dee6b7d19 beego: fix the namespace cond 2014-05-28 10:23:31 +08:00
astaxie
f6c7a6bd32 beego: improve the admin router print 2014-05-27 17:27:22 +08:00
astaxie
3f7e91e6a4 beego:fix *.* router bug 2014-05-26 10:15:56 +08:00
astaxie
0d17d974cd beego: update namespace 2014-05-23 15:56:25 +08:00
astaxie
17104c25a2 beego: Refactoring Filter & add comments 2014-05-20 18:47:41 +08:00
astaxie
9f01aeed31 beego:remove unused code 2014-05-19 18:52:48 +08:00
astaxie
c5c806b58e beego: XSRF support Controller level fix #610
default value is true when you Enable Global XSRF, also can control in
the prepare function to change the value.
2014-05-17 02:26:51 +08:00
astaxie
e657dcfd5f beego: support namespace
ns := beego.NewNamespace("/v1/api/")
ns.Cond(func(ctx *context.Context)bool{
	    if ctx.Input.Domain() == "www.beego.me" {
	    	return true
	    }
	    return false
	})
.Filter("before", Authenticate)
.Router("/order",	&admin.OrderController{})
.Get("/version",func (ctx *context.Context) {
	ctx.Output.Body([]byte("1.0.0"))
})
.Post("/login",func (ctx *context.Context) {
	if ctx.Query("username") == "admin" && ctx.Query("username") ==
"password" {

	}
})
.Namespace(
	NewNamespace("/shop").
		Get("/order/:id", func(ctx *context.Context) {
		ctx.Output.Body([]byte(ctx.Input.Param(":id")))
	}),
)
2014-05-17 02:26:51 +08:00
astaxie
55ad951bce beego: support more router
//design model
	beego.Get(router, beego.FilterFunc)
	beego.Post(router, beego.FilterFunc)
	beego.Put(router, beego.FilterFunc)
	beego.Head(router, beego.FilterFunc)
	beego.Options(router, beego.FilterFunc)
	beego.Delete(router, beego.FilterFunc)
	beego.Handler(router, http.Handler)

//example

beego.Get("/user", func(ctx *context.Context) {
	ctx.Output.Body([]byte("Get userlist"))
})

beego.Post("/user", func(ctx *context.Context) {
	ctx.Output.Body([]byte("add userlist"))
})

beego.Delete("/user/:id", func(ctx *context.Context) {
	ctx.Output.Body([]byte([]byte(ctx.Input.Param(":id")))
})

import (
    "http"
    "github.com/gorilla/rpc"
    "github.com/gorilla/rpc/json"
)

func init() {
    s := rpc.NewServer()
    s.RegisterCodec(json.NewCodec(), "application/json")
    s.RegisterService(new(HelloService), "")
    beego.Handler("/rpc", s)
}
2014-05-17 02:26:51 +08:00
astaxie
3b9a404138 beego: support other analisys & fix typo 2014-05-17 02:26:50 +08:00
astaxie
c188cbbcb4 update all files License 2014-05-17 02:26:50 +08:00
astaxie
4245521660 fix #576 2014-05-17 02:26:50 +08:00
astaxie
aa68ffecec beego: support not-empty value in router fix #555 2014-05-17 02:26:50 +08:00
astaxie
3255a43568 beego: move staticServer to New file 2014-04-06 00:18:21 +08:00