mirror of
https://github.com/bettercap/bettercap
synced 2025-07-16 10:03:39 -07:00
new: implemented request.Header and response.Header methods for HTTP proxy modules (closes #174)
This commit is contained in:
parent
9ffef99811
commit
9d0c7bc405
2 changed files with 21 additions and 0 deletions
|
@ -88,6 +88,16 @@ func (j *JSRequest) WasModified() bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (j *JSRequest) Header(name, deflt string) string {
|
||||||
|
name = strings.ToLower(name)
|
||||||
|
for _, h := range j.Headers {
|
||||||
|
if name == strings.ToLower(h.Name) {
|
||||||
|
return h.Value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return deflt
|
||||||
|
}
|
||||||
|
|
||||||
func (j *JSRequest) ReadBody() string {
|
func (j *JSRequest) ReadBody() string {
|
||||||
raw, err := ioutil.ReadAll(j.req.Body)
|
raw, err := ioutil.ReadAll(j.req.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -73,6 +73,17 @@ func (j *JSResponse) WasModified() bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (j *JSResponse) Header(name, deflt string) string {
|
||||||
|
name = strings.ToLower(name)
|
||||||
|
for _, header := range strings.Split(j.Headers, "\n") {
|
||||||
|
parts := strings.SplitN(core.Trim(header), ":", 2)
|
||||||
|
if len(parts) == 2 && strings.ToLower(parts[0]) == name {
|
||||||
|
return parts[1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return deflt
|
||||||
|
}
|
||||||
|
|
||||||
func (j *JSResponse) ToResponse(req *http.Request) (resp *http.Response) {
|
func (j *JSResponse) ToResponse(req *http.Request) (resp *http.Response) {
|
||||||
resp = goproxy.NewResponse(req, j.ContentType, j.Status, j.Body)
|
resp = goproxy.NewResponse(req, j.ContentType, j.Status, j.Body)
|
||||||
if j.Headers != "" {
|
if j.Headers != "" {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue