1

2 つのドメインを持つサイト用に、Greasemonkey ユーザースクリプトを作成しています。http://friendlyurl.comとしましょうhttp://ugly.url.comhttp://friendlyurl.com/*にリダイレクトしhttp://ugly.url.com/*ます。ユーザースクリプトに含めたい機能の 1 つは、HTML5 を使用して見苦しい URL をわかりやすい URL に書き換えることでしたreplaceState()

私が持っていたコードは次のとおりです。

(function() {
    if (history.replaceState) {
        var url = document.location.href.replace('ugly.url.com/', 'friendlyurl.com/');
        history.replaceState({}, document.title, url);
    }
})();

これがSame-Originポリシーに違反していることに気付くまで。私の質問は: GM_* API を潜在的に使用して、サイトのドメインを切り替える回避策はありますか? 明らかに、これはユーザースクリプトであるため、セキュリティの問題ははるかに低い規模です。私の現在の推測では、それは不可能だと思いますが、私はそこに質問を出したと思いました.

4

1 に答える 1

2

history.replaceStateセキュリティ上の理由から、ドメインの変更には使用できません。GM API 経由でさえありません。

replaceState() の HTML 標準のルールの詳細を参照してください。

于 2012-06-18T14:58:38.750 に答える