如何在AJAX请求中隐藏api密钥

时间:2017-10-17 13:02:39

标签: javascript jquery ajax key hide

我想在桌面上直接由客户端完成一个ajax请求。

问题是我的ajax请求需要一个" secret api Key"。我不希望客户端访问此api密钥。

这是我目前的js代码:

    var url = 'myurl';                
    var obj = new Object();
    obj.api_key         = "myKeyIwantToHide";
    $.ajax({    url: url, 
                type: 'post',
                dataType: 'json',
                data: obj,
                cache: false,
                success: function(result){
                    alert(result);
                }
    });

可以使用javascript将信息隐藏到客户端,以完成我的ajax请求。

THX, 克里斯托夫

1 个答案:

答案 0 :(得分:-1)

您无法完全从客户端隐藏api密钥。但如果您的客户是非技术性的。你可以让他/她找到api密钥。如果您正在使用MVC,则可以在将第一个请求发送到Index方法时设置api密钥,并在返回时将其设置为javascript变量。通过这种方式,用户将无法看到硬编码的值,这与您显示的代码不同。如果您使用的是ASP.NET,则可以使用razor语法轻松使用ViewBag将值设置为javascript变量。