在Chrome中,我使用JS控制台中的JSON
文件填充了一个在线映射工具(Kumu):
Workflows.setCurrentMapSource("MY_JSON_LINK");
MY_JSON_LINK在哪里:
https://XXXXXX/json?key=MTE3.DI4LYA.ZrzRFJ5o7Q5m3nLe6d6JGFISdKI
但链接不再有效,所以当我进入Kumu页面时,我收到错误:
Unable to open map
有没有办法打破JS控制台的连接?我搜索过但没找到任何可行的东西
由于
答案 0 :(得分: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上测试它。