FormData iOS patch
| ... | ... |
@@ -34,14 +34,14 @@ var bundle_size = 0; |
| 34 | 34 |
var jsSHA = require("./sha.js");
|
| 35 | 35 |
|
| 36 | 36 |
function sendPayload(payload) {
|
| 37 |
- var data = new FormData(); |
|
| 38 |
- data.append(cfg_data_field, payload); |
|
| 39 |
- |
|
| 37 |
+ var data = encodeURIComponent(cfg_data_field) + '=' + encodeURIComponent(payload); |
|
| 38 |
+ |
|
| 40 | 39 |
if (cfg_sign_field) {
|
| 41 | 40 |
var sha = new jsSHA(cfg_sign_algo, "TEXT"); |
| 42 | 41 |
sha.setHMACKey(cfg_sign_key, cfg_sign_key_format); |
| 43 | 42 |
sha.update(payload); |
| 44 |
- data.append(cfg_sign_field, sha.getHMAC(cfg_sign_field_format)); |
|
| 43 |
+ data += '&' + encodeURIComponent(cfg_sign_field) +'=' |
|
| 44 |
+ + encodeURIComponent(sha.getHMAC(cfg_sign_field_format)); |
|
| 45 | 45 |
} |
| 46 | 46 |
|
| 47 | 47 |
if (cfg_extra_fields.length > 0) {
|
| ... | ... |
@@ -49,12 +49,13 @@ function sendPayload(payload) {
|
| 49 | 49 |
var decoded = decodeURIComponent(cfg_extra_fields[i]).split("=");
|
| 50 | 50 |
var name = decoded.shift(); |
| 51 | 51 |
var value = decoded.join("=");
|
| 52 |
- data.append(name, value); |
|
| 52 |
+ data += '&' + encodeURIComponent(name) + '=' + encodeURIComponent(value); |
|
| 53 | 53 |
} |
| 54 | 54 |
} |
| 55 | 55 |
|
| 56 | 56 |
i_sender = 1 - i_sender; |
| 57 | 57 |
senders[i_sender].open("POST", cfg_endpoint, true);
|
| 58 |
+ senders[i_sender].setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
|
|
| 58 | 59 |
senders[i_sender].send(data); |
| 59 | 60 |
} |
| 60 | 61 |
|