【问题标题】:CORS Implementation in phpphp中的CORS实现
【发布时间】:2015-12-21 07:07:01
【问题描述】:

我只是在使用 Codeigniter 作为 PHP 框架制作一个应用程序,并且我正在使用 API 来通过 ajax 请求在跨站点上呈现视图。现在我的问题是我将所有文件都托管在一个网站上,比如 homnath.com.np,并通过将它们的 webURL 存储到数据库中来为不同的网站提供 API 密钥,比如 abc.com、xyz.com 和许多其他网站。现在,当 xyz.com 通过 ajax 在我的网站 homnath.com 中点击时,我怎么知道通过 API 密钥在我的网站 homnath.com 上点击的 webURL,以及如果它是有效且列出的网站,如何允许 CORS 使用它.而且我用过 header("访问控制允许来源:*"); 允许所有 webURLS,现在我想过滤它们并只提供对我数据库中列出的那些的访问。我怎样才能在codeigniter的控制器中做到这一点。我想屏蔽其他网站。

【问题讨论】:

  • 但是上面的链接并没有解决我的整个问题。所以它不是重复的
  • 整个案例是什么意思,它将指导您,然后您可以添加尝试后遇到的错误,没有人会给您现成的答案

标签: php jquery html ajax codeigniter


【解决方案1】:

为此,您可以检查网址

         $incomingOrigin = $webURL;

         $hotdat = array();
          foreach ($hotelURL as $releted){         //$hotelURL is an array from your database
          $addURL = $releted->url;              // $releted->url the db field name for url
         array_push($hotdat, $addURL);
         }

       if ($incomingOrigin !== null && isOriginAllowed($incomingOrigin, $hotdat)== TRUE)
      {
       header("Access-Control-Allow-Origin: $incomingOrigin");
     }else{
        echo ("CSRF protection in POST request: detected invalid Origin header: " . $incomingOrigin);
   header("Access-Control-Allow-Origin: http://bookingpoints.com");
     }

【讨论】:

    猜你喜欢
    • 2014-09-01
    • 2018-05-25
    • 2014-04-17
    • 2015-08-18
    • 2019-03-30
    • 2019-11-23
    • 2018-06-16
    • 1970-01-01
    • 2016-06-24
    相关资源
    最近更新 更多