I have the headers down for my post request, but I don't know how to send the data in binary and compressed. This is my curl command:
curl 'http://192.168.1.90:333/sendMessage.srv'
-H 'Origin: http://192.168.1.90:333'
-H 'Accept-Encocding: gzip, deflate'
-H 'Accept-Language: en-US,en;q=0.9'
-H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
-H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryycti6tczDNAO3xqF'
-H 'Accept: */*'
-H 'Referer: http://192.168.1.90:333/'
-H 'X-Requested-With: XMLHttpRequest'
-H 'Connection: keep-alive'
--data-binary PAYLOAD --compressed
this is my payload that I am trying to send
------WebKitFormBoundaryycti6tczDNAO3xqF
Content-Disposition: form-data; name="hashid"
+12223334444
------WebKitFormBoundaryycti6tczDNAO3xqF
Content-Disposition: form-data; name="reqUID"
wxyz
------WebKitFormBoundaryycti6tczDNAO3xqF
Content-Disposition: form-data; name="recipients"
------WebKitFormBoundaryycti6tczDNAO3xqF
Content-Disposition: form-data; name="file-name"
------WebKitFormBoundaryycti6tczDNAO3xqF
Content-Disposition: form-data; name="text"
message
------WebKitFormBoundaryycti6tczDNAO3xqF--
or on 1 line it is
$'------WebKitFormBoundaryk7s3ZvI9evAhMsEL
Content-Disposition: form-data; name="hashid"
+12223334444
------WebKitFormBoundaryk7s3ZvI9evAhMsEL
Content-Disposition: form-data; name="reqUID"
ly9a
------WebKitFormBoundaryk7s3ZvI9evAhMsEL
Content-Disposition: form-data; name="recipients"
------WebKitFormBoundaryk7s3ZvI9evAhMsEL
Content-Disposition: form-data; name="file-name"
------WebKitFormBoundaryk7s3ZvI9evAhMsEL
Content-Disposition: form-data; name="text"
message
------WebKitFormBoundaryk7s3ZvI9vAhMsEL--
'
and this is my code:
body := strings.NewReader(`$------WebKitFormBoundaryU8vOdhYkInm8YBuZ
Content-Disposition: form-data; name="hashid"
+12223334444
------WebKitFormBoundaryU8vOdhYkInm8YBuZ
Content-Disposition: form-data; name="reqUID"
vvpr
------WebKitFormBoundaryU8vOdhYkInm8YBuZ
Content-Disposition: form-data; name="recipients"
------WebKitFormBoundaryU8vOdhYkInm8YBuZ
Content-Disposition: form-data; name="file-name"
------WebKitFormBoundaryU8vOdhYkInm8YBuZ
Content-Disposition: form-data; name="text"
\message
------WebKitFormBoundaryU8vOdhYkInm8YBuZ--
`)
req, err := http.NewRequest("POST", "http://192.168.1.90:333/sendMessage.srv", body)
if err != nil {
panic(err)
}
req.Header.Set("Origin", "http://192.168.1.90:333")
req.Header.Set("Accept-Encoding", "gzip, deflate")
req.Header.Set("Accept-Language", "en-US,en;q=0.9")
req.Header.Set("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36")
req.Header.Set("Content-Type", "multipart/form-data; boundary=----WebKitFormBoundaryU8vOdhYkInm8YBuZ")
req.Header.Set("Accept", "*/*")
req.Header.Set("Referer", "http://192.168.1.90:333/")
req.Header.Set("X-Requested-With", "XMLHttpRequest")
req.Header.Set("Connection", "keep-alive")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()