Сгенерированный почтальоном код не будет отправлен с Tampermonkey - PullRequest
0 голосов
/ 09 мая 2019

Я использовал программу Почтальон, чтобы отправить мне запрос HTTP Post. Он работает нормально с почтальоном, то есть отправляет правильно.

Теперь я пытаюсь использовать generate code snippets Почтальона, чтобы преобразовать код запроса в JavaScript jQuery AJAX и поместить результат в скрипт пользователя:

// ==UserScript==
// @name         Send HTTP
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        http://colorillo.com/
// @grant        none
// ==/UserScript==
var timerVar = setInterval (function() {DoMeEverySecond (); }, 5000); // << set to 2 seconds.

function DoMeEverySecond ()
{
var form = new FormData();
form.append("l", "[[158,115],[159,115],[159,116],[160,118],[161,119],[161,120],[162,121],[162,122]]");
form.append("w", "1");
form.append("c", "000000");
form.append("o", "100");
form.append("f", "1");
form.append("_", "false");

var settings = {
  "async": true,
  "crossDomain": true,
  "url": "http://colorillo.com/draw.php?ing=_index",
  "method": "POST",
  "headers": {
    "Content-Type": "application/x-www-form-urlencoded",
    "X-Requested-With": "XMLHttpRequest",
    "Accept": "*/*",
    "User-Agent": "PostmanRuntime/7.11.0",
    "Cache-Control": "no-cache",
    "Postman-Token": "c6ecb194-94ba-4945-88fa-8d8cab3a1bd4,c20b3c71-cc61-4874-93c4-2f3c6b63d5b6",
    "Host": "colorillo.com",
    "cookie": "i=cloyfj1bio8uvxlqrkfkczqxo1pmx7m5; o=100; w=15; c=t44q; h=_-g00000____5aU00bH_GqCFXg3g_SY0gtx1J808RNApYLbO6g41X1wo____T000R01Puw3rMVU0t44q7w3F0afp4NcjXz00; a=lnpe0l; oi=qld8gxkfrzalpvqgydze7dzbm8p1r2zp",
    "accept-encoding": "gzip, deflate",
    "content-length": "753",
    "Connection": "keep-alive",
    "cache-control": "no-cache"
  },
  "processData": false,
  "contentType": false,
  "mimeType": "multipart/form-data",
  "data": form
}

$.ajax(settings).done(function (response) {
  console.log(response);
})();
}

Выполнение вышеуказанного кода в TamperMonkey не отправляет запрос и показывает ошибку в консоли:

enter image description here

Сайт использует jQuery, я могу это подтвердить из консоли devtools.

1 Ответ

0 голосов
/ 10 мая 2019

Сайт использует jQuery v1.4.2, но done () был добавлен в 1.5 .

Используйте success обратный вызов внутри settings вместо:

var settings = {
  "success": function (data) {
    console.log(data);
  },
  "async": true,
  "crossDomain": true,
  "url": "http://colorillo.com/draw.php?ing=_index",
  //.......................
}

$.ajax(settings);
...