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
|
||||
}
|
||||
|
||||
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 {
|
||||
raw, err := ioutil.ReadAll(j.req.Body)
|
||||
if err != nil {
|
||||
|
|
|
@ -73,6 +73,17 @@ func (j *JSResponse) WasModified() bool {
|
|||
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) {
|
||||
resp = goproxy.NewResponse(req, j.ContentType, j.Status, j.Body)
|
||||
if j.Headers != "" {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue