2011-11-21 56 views
0

我有一个程序,将允许用户出售他们的数字产品。当客户购买下载时,他们会得到直接下载产品的链接(直接从浏览器下载)。隐藏下载链接的网络流量

Response.Redirect("http://blah.com/blah"); 

事情是,当下载开始时,链接将出现在浏览器的网络流量中。有没有办法隐藏这种情况发生?

感谢所有

回答

3

您是否试图阻止某人在网络连接上窃听下载URL?您可以使用SSL。

或者您是否试图阻止客户看到下载链接并与朋友分享,绕过购买流程?防止用户找到他的浏览器从哪里下载是不可行的。相反,您应该确保下载本身,以防止未经授权的人员使用。

例如,您可以为每次购买生成唯一的ID,并将ID作为查询参数附加到下载URL。这样您就可以检查每个下载请求是否与实际购买相对应,并且可能禁止多次下载该文件的相同ID。或者,如果购买网站上有登录,请下载验证登录用户是否购买了该文件。

+0

感谢您的回复。如果可下载文件保存在与自己不同的服务器上? –

+0

@WesleySkeen,或者与远程站点协作让它参与你的认证方案,或者从远程站点*下载文件*,从你自己的服务器重新托管它,并且不要给任何人*直接链接到原始来源。 (理想情况下,一旦你有你的副本,该文件应该被删除。) – Wyzard

0

我不知道任何方式操纵客户的历史记录(我认为是你所说的“浏览器的网络流量”的意思),我相信这是一个非常好的事情。网页不应该有能力改变客户的日志。

如果您只是在担心人们找到链接并重新分配它,也许您不应该直接链接,而是使用会话来验证请求来自付费客户。一经验证,然后将下载推送给用户。