我需要能够在我的网站中打开外部URL,而不是向我的用户(在浏览器和源代码中)显示它。我不希望他们能够复制URL并根据自己的喜好编辑查询字符串。有没有办法在iframe或类似的东西中打开URL,并隐藏/掩盖其来源?
这是一个asp.net 2.0网站。
答案 0 :(得分:3)
没有。如果您让客户机器做某事(即将浏览器指向网页),则无法保留这些信息。
您可以在Flash小部件或其他容器中呈现该页面服务器端,但您无法在客户端计算机上执行此操作。
答案 1 :(得分:3)
你能做到以下几点:
这样用户永远不会知道其他网站,而且应该更加安全。
这也可能使用一些验证/身份验证,因此用户无法更改传递的参数以检索其他用户的PDF。
答案 2 :(得分:1)
最好的选择:您可以使用AJAX制作服务器端XMLHTTP请求,获取响应并反馈到您的页面。
答案 3 :(得分:1)
您可以通过以下方式执行服务器端:
这可能会大大减慢您的页面加载速度,并且可能会出现法律问题。
答案 4 :(得分:1)
我前一段时间遇到过类似的问题,并按照这些方式做了一些事情(C#.NET 2.0);
public void StreamURLContents(string URL)
{
WebRequest req = WebRequest.Create(URL);
using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
using (Stream dataStream = resp.GetResponseStream())
using (StreamReader reader = new StreamReader(dataStream))
{
string currentLine = reader.ReadLine();
while (currentLine != null)
{
Response.Write(currentLine);
currentLine = reader.ReadLine();
}
}
}
您必须明确定制HTML的编写以适合您的特定应用程序,并且您将打破目标站点中的所有相关链接(图像URL,CSS链接等),但如果您只是在简单的文本HTML之后,希望你的网络应用程序能够抓住服务器端,那么这是一个很好的方法。
答案 5 :(得分:0)
您可以通过执行以下操作来创建一次性网址: