Разорвать соединение с сайтом из консоли JS

1

В Chrome я заполнил инструмент отображения on-line (Kumu) с JSON файлом из консоли JS с:

Workflows.setCurrentMapSource("MY_JSON_LINK");

где MY_JSON_LINK:

https://XXXXXX/json?key=MTE3.DI4LYA.ZrzRFJ5o7Q5m3nLe6d6JGFISdKI

Но ссылка больше не активна, поэтому, когда я перехожу на страницу Kumu, я получаю сообщение об ошибке:

Unable to open map

Есть ли способ разорвать соединение с JS Console? Я искал, но не нашел ничего, что работает

Спасибо

Теги:
developer-tools

1 ответ

0

Я звоню по телефону, поэтому я не могу дать вам код, но то, что вы можете сделать, это переопределить методы XMLHttpRequest, а затем вы можете манипулировать любыми запросами, сделанными на странице.

Но это, конечно же, должно быть сделано до того, как будут выполнены запросы, поэтому вам, вероятно, потребуется почтовый индекс Tampermonkey. Пример:

const originalOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function (){
     //do what you need
    originalOpen. apply(this, arguments);
}

Например, если вы хотите защитить некоторую ссылку от доступа, вы можете сделать это:

const originalOpen = XMLHttpRequest.prototype.open;
const REGEX_TEST_URL = /https?:\/\/XXXXXX\/json?key=(.*?)/
XMLHttpRequest.prototype.open = function (method, url){
   console.log("Open: ", url);
   /// if you want to kill access to that URL
   if(REGEX_TEST_URL.test(url))
       throw new Error("Blocked loading of URL "+url)
   //Otherwise allow normal operatio to proceed
   originalOpen.apply(this, arguments);
}

Вы можете проверить это даже здесь в stackoverflow.

  • 0
    Томас, спасибо, но я совершенно новорожденный, я понятия не имею, что добавить в свой код, чтобы он работал. Пожалуйста, если у вас есть время, не могли бы вы заполнить детали? Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню