我有一个项目,我从jquery ajax调用一个php文件。在php文件中我有一个curl调用一个rest API来获取一些数据。这个数据流不能改变,即从jquery我调用php文件,然后从PHP文件api将被调用。现在我必须阻止在触发ajax调用时在firebug控制台中显示url。任何想法我怎么能实现这一点?这是我用来调用php文件的代码。
$.getJSON("file.php",function(data) {
console.log("hello"+data);
});
答案 0 :(得分:5)
现在我必须阻止在触发ajax调用时在firebug控制台中显示url。
抱歉,不可能。如果用户的Web浏览器正在发出请求,则用户可以看到它。即使你设法以某种方式将其隐藏在网络浏览器中,他们仍然可以在任何其他工具中看到它。用户可以检查来自用户机器的任何请求。
如果你完全需要来实现这一点,那么你需要编写一个自定义客户端并在该客户端和服务器之间执行加密通信。
现在回到真正的问题...... 为什么应该对用户隐藏?如果用户不应该看到数据,那么为什么请求首先在客户端进行?只需从服务器端代码发出请求并保留数据服务器端。如果用户应该看到数据,那么问题是什么?如果用户不应该看到URL但应该看到数据,请获取数据服务器端并仅向用户显示数据。
如果您的公共网址为请求者提供了敏感信息,并且您不希望任何人知道该网址是什么,那么您就会遇到安全问题。正如上面的评论中所提到的,通过默默无闻的安全性根本就没有安全性。