将公共API安全保护到一个域

时间:2015-06-19 17:13:10

标签: javascript angularjs node.js api

我正在创建一个页面,它发出一个基本的API请求,然后从mongo数据库返回结果。它看起来像这样:

$scope.doSearch = function(query){
    $http({
        method: "get",
        url: "/api/search.json?q=" + query
    }).success(function(data){
        // bind data to display the results on the page
    });
};

然后在服务器上捕获请求,搜索数据库并将结果返回到上面的ajax请求。由于这是一个公共API,我该如何制作,以便您无法从其他网站发出请求,或只是发出基本cURL请求?

我考虑使用HMAC,但我认为这不会起作用,因为客户端需要知道秘密才能创建签名,然后任何人都可以看看签名并将其复制到从他们自己的网站提出请求。

0 个答案:

没有答案