1

我目前有以下 JavaScript 函数,它将获取当前 URL 并将其连接到另一个站点 URL 以将其路由到适当的反馈组:

function sendFeedback() {
    url = window.location.href;
    newwin = window.open('http://www.anothersite.com/home/feedback/?s=' + url, 'Feedback');
}

不确定这是否是正确的术语,但我想屏蔽window.open语句中的 URL 以使用当前窗口中的 URL。

我如何能够window.open用 JavaScript 中的原始 URL 屏蔽 URL?

4

2 回答 2

4

你可以做的事情:

1-在您网站的文档内的 html 框架中屏蔽外部网站。(例如www.mysite.com/shortUrl/

2-发送一个LocationHTTP头(最终会显示真实的url)

请记住,由于网络钓鱼问题,浏览器会尽力显示真实地址。

于 2010-10-18T23:25:16.630 回答
0

如果我想屏蔽 url,即使认为它可以与 javascript 一起使用,我也不会使用 javascript。在这种情况下,您不会获得太多好处。

原因很简单:

  • javascript/jQuery = 函数属于客户端(浏览器/您的 PC/DOM)

  • links、url、http 和 headers = 函数属于 Apache。

Apache 始终位于客户端之上。每当链接被触发到 SampeLink.html 时,Apache 就会唤醒并读取文件,但链接/url 在 javascript 可以声明它们之前已经拥有。所以,如果你试图在你的 javascript 脚本中操作链接,那是没有意义的,即使它有效但很弱。

我会向您指出这种很棒的方法:.htaccess,您会惊讶于它的强大功能。如果 .htaccess 出现在 SampleLink.html 的父文件夹中,则 Apache 拒绝 DOM 引擎(您的浏览器)读取文件,直到 Apache 完成读取 .htaccess。

对于您的场景,.htaccess 可以通过重写链接和向 DOM 引擎发送“诱饵”链接来为您做一些工作,同时将原始链接/url 隐藏在幕后;如果他们试图破坏应用程序或您担心的任何事情,访问者会到达 404page。

这有点复杂,但它从未停止让我失望。我用它作为我的“圣经” http://corz.org/serv/tricks/htaccess2.php

于 2013-04-20T10:44:00.877 回答