https://website.org/的目录/页 .PHP
https://sub1.sub2.site.com/files/content?site=mysite&path=/的目录/页 html的
我已经有了这个很棒的书签,用于将子域从生产服务器切换到开发。
javascript:location.href=location.protocol+"//"+"webproto"+"."+(location.host.split(".").length==3?location.host.split(".").slice(1,location.host.split(".").length).join("."):location.host)+location.pathname+location.search;
但我无法弄明白如何通过
将其提升到新的水平答案 0 :(得分:0)
因此,将其置于书签中,同时使其健壮是非常重要的。这是我的解决方案。
npm install -g webpack
project/
bookmarklet.js
download/
urlMunge.js
javascript: (function () {
var jsCode = document.createElement('script');
jsCode.setAttribute('src', 'https://YOUR_SERVER/bundle.js');
document.body.appendChild(jsCode);
}());
urlMunge.js
// put all in a function to make sure that we don't mess up whatever page
// we are on.
var urlMunge = function urlMunge() {
var URL = require('url-parse');
var EXT = '.html';
// https://sub1.sub2.site.com/files/content?site=mysite&path=/directory/page.html
test1 = window.location;
var sourceUrl = new URL(test1);
var formattedUrl = new URL('https://sub1.sub2.site.com/files/content');
var pathname = sourceUrl.pathname;
var host = sourceUrl.host;
var query = {
query: sourceUrl.query,
path: pathname.slice(0, pathname.lastIndexOf('.')) + EXT,
host: host.slice(0, host.lastIndexOf('.')) + '.com',
}
formattedUrl.set('query', query);
console.log(formattedUrl.toString());
}
urlMunge();
添加url-parse库。 cd
进入下载目录并运行npm install url-parse
,这将创建一个带有url-parse及其依赖项的node_modules
目录。
在下载目录中运行webpack urlMunge.js ../bundle.js
,它将使用我们的代码和url-parse lib创建bundle.js。
将bundle.js放入网络服务器,您的书签可以加载它并进行测试。您需要查看浏览器的控制台以查看urlMunge的输出。