使用WP管理员AJAX URL隐藏API密钥

时间:2018-03-17 作者:scopeak

目前我正在使用AJAX 请求一个简单的JSON 来自外部API的响应。问题是,API密钥已公开。我知道最好的方法是通过admin-ajax 并设置通过PHP调用url。做这件事最安全的方法是什么,如何通过PHP请求?

$.ajax({
  type: "GET",
  url: "https://link.to/api/v2/link?time=day&key=(APIKEYHERE)&response_type=json",
  data: dataString,
  dataType: "json",

  //if received a response from the server
  success: function(response) {
      console.log(response);
  }, 
});

2 个回复
最合适的回答,由SO网友:Johansson 整理而成

我将把这个问题分成两部分。

首先,可以向服务器发送Ajax请求,只发送dataString 变量

然后,您可以使用cURLwp_remote_get() 在服务器上访问真正的API。

如果您想避免使用哈希进行隐藏和查找,避免编写大量代码,从而让用户很难找到API密钥,那么这可能是唯一的解决方案。

SO网友:JBoulhous

It depends on what the external API offers, 大体上read/write access 一些数据<我认为:

如果您的网站访问者allowed 对该数据的访问/权限ok. not allowed 对该数据的访问/权限not ok.app 和user api密钥<这将取决于您的用例<但是我可以这么说if the external API data access is sensible you should do that on the server and go throw AJAX or REST.

结束

相关推荐

如何在wp-admin中按ID搜索帖子

当我转到管理区域中的帖子列表时,我只能按帖子标题或内容进行搜索。我想添加一个按帖子或页面id搜索的功能,使编辑更容易找到他们正在寻找的帖子。我需要在插件文件夹中实现它。有什么想法吗?我不知道现在该从哪里开始。谢谢大家!