refactor(CR): better way of writing switch statement

This commit is contained in:
forgedhallpass 2021-11-26 11:38:09 +02:00
parent 7e22d70ded
commit 5eca474c5e

View File

@ -16,16 +16,16 @@ func (p *Page) routingRuleHandler(ctx *rod.Hijack) {
continue continue
} }
switch { switch rule.Action {
case rule.Action == ActionSetMethod: case ActionSetMethod:
ctx.Request.Req().Method = rule.Args["method"] ctx.Request.Req().Method = rule.Args["method"]
case rule.Action == ActionAddHeader: case ActionAddHeader:
ctx.Request.Req().Header.Add(rule.Args["key"], rule.Args["value"]) ctx.Request.Req().Header.Add(rule.Args["key"], rule.Args["value"])
case rule.Action == ActionSetHeader: case ActionSetHeader:
ctx.Request.Req().Header.Set(rule.Args["key"], rule.Args["value"]) ctx.Request.Req().Header.Set(rule.Args["key"], rule.Args["value"])
case rule.Action == ActionDeleteHeader: case ActionDeleteHeader:
ctx.Request.Req().Header.Del(rule.Args["key"]) ctx.Request.Req().Header.Del(rule.Args["key"])
case rule.Action == ActionSetBody: case ActionSetBody:
body := rule.Args["body"] body := rule.Args["body"]
ctx.Request.Req().ContentLength = int64(len(body)) ctx.Request.Req().ContentLength = int64(len(body))
ctx.Request.SetBody(body) ctx.Request.SetBody(body)
@ -38,14 +38,14 @@ func (p *Page) routingRuleHandler(ctx *rod.Hijack) {
continue continue
} }
switch { switch rule.Action {
case rule.Action == ActionAddHeader: case ActionAddHeader:
ctx.Response.Headers().Add(rule.Args["key"], rule.Args["value"]) ctx.Response.Headers().Add(rule.Args["key"], rule.Args["value"])
case rule.Action == ActionSetHeader: case ActionSetHeader:
ctx.Response.Headers().Set(rule.Args["key"], rule.Args["value"]) ctx.Response.Headers().Set(rule.Args["key"], rule.Args["value"])
case rule.Action == ActionDeleteHeader: case ActionDeleteHeader:
ctx.Response.Headers().Del(rule.Args["key"]) ctx.Response.Headers().Del(rule.Args["key"])
case rule.Action == ActionSetBody: case ActionSetBody:
body := rule.Args["body"] body := rule.Args["body"]
ctx.Response.Headers().Set("Content-Length", fmt.Sprintf("%d", len(body))) ctx.Response.Headers().Set("Content-Length", fmt.Sprintf("%d", len(body)))
ctx.Response.SetBody(rule.Args["body"]) ctx.Response.SetBody(rule.Args["body"])