为了账号安全,请及时绑定邮箱和手机立即绑定

借助此插图,如何实现服务器到服务器的数据

借助此插图,如何实现服务器到服务器的数据

PHP
莫回无 2021-04-29 13:38:53
我在本地PC上设置了两个虚拟主机,第一个域是http://dev.local,另一个域处理api请求http://api.server.local/。这个想法很简单,但是不确定如何实现这种设置。所以这是实际过程。dev.local将发送一些重要的参数和值,API服务器首先将其读取并验证从dev.local发送的数据。例如,我有从API服务器提供的API密钥,并且与只能使用该API的域一起存储在数据库中。因此,最重要的是,我想确保只有dev.local可以执行请求。这是一些例证。我已经尝试过cURL函数,但是由于某些原因,只要拥有api键的副本,任何人都可以访问该数据。因此,我想确保请求的来源或请求的来源。这是我对dev.local拥有的脚本,用于访问api.server.local <?php $__apiServer    = 'http://api.server.local'; $__apiVersion   = '1.0'; $__apikey       = '7c4a8d09ca3762af61e59520943dc26494f8941b'; // API Key $__apiEmail     = 'johnsmith99@gmail.com'; // Registered Email Address $__apiUser      = 'johnsmith'; // Username $__curlURL      = ""; $__curlURL      = "{$__curlURL}{$__apiServer}/v{$__apiVersion}"; $__curlURL      = "{$__curlURL}/bin.php?user={$__apiUser}"; $__curlURL      = "{$__curlURL}&email={$__apiEmail}"; $__curlURL      = "{$__curlURL}&key=$__apikey"; $__curlURL      = "{$__curlURL}&domain=$_SERVER[SERVER_NAME]"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $__curlURL); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  curl_setopt($ch, CURLOPT_TIMEOUT, 30);          if(curl_exec($ch) === FALSE) {      echo "Failed to load resource files from the API Server: $__apiServer"; } else {     $__curlURL = curl_exec($ch);      if($err != 1){         eval(' ?>' . $__curlURL);      } } curl_close($ch);我希望只有在所需数据有效的情况下才能返回该值。目前,可以按预期方式读取输出,但是只要拥有api密钥和其他凭据的副本,任何人都可以访问。
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

我知道了。我使用了cURL POST方法,它比使用GET更安全。并解析数组变量以验证主要参数。


查看完整回答
反对 回复 2021-05-07
  • 1 回答
  • 0 关注
  • 177 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信