如何防止用户从URL访问文件?

时间:2014-06-16 08:00:39

标签: javascript ajax file-access

我使用javascript来提供xml数据或MySQL数据,如你所知,我应该使用一些ajax代码来执行此操作(调用代理php代码),如下所示:

var url = 'include-xml/leagues.xml'; 
$.ajax({
    type: "POST",
    url: url,
    dataType: "xml",
    success: parseNamesMidnight
    });

但我的问题是,如果有人试图直接从URL访问该文件。反正是否阻止人们访问我用它们作为代理的文件?

1 个答案:

答案 0 :(得分:0)

不是真的。 Web服务就像您可以放在网上的任何其他内容:当您不希望世界上的每个人都访问您的数据时,请不要将其放在公共网站上。

您可以让您的网络服务检查用户Referer - 标头,并仅提供源自您网站的请求。但是这个标题是可选的,由用户代理提供,因此它可以被非法用户伪造或被合法用户省略,因此它不是一种可靠的方式。

您也可以让您的网络服务使用用户名和密码进行身份验证。这至少会限制对注册用户的访问,并允许您控制每个用户可以访问的数据。但是,如果没有您的网站,它不会阻止具有登录凭据的用户访问Web服务。