【问题标题】:No 'Access-Control-Allow-Origin' error in HMVC CodeigniterHMVC Codeigniter 中没有“Access-Control-Allow-Origin”错误
【发布时间】:2016-02-13 10:53:39
【问题描述】:

页面在我的控制台中加载时会显示此错误

来自“http://example.com”的字体已被阻止加载 跨域资源共享策略:没有“Access-Control-Allow-Origin” 请求的资源上存在标头。起源 'http://www.example.com' 因此不允许访问。

当我调用 ajax 函数时。它显示此错误

XMLHttpRequest 无法加载 http://example.com/index.php/home/getCity?city=d。不 请求中存在“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“http://www.example.com” 访问。

home 控制器中有哪些 ajax 函数。但我在另一个控制器中。可能我认为这是问题。我该如何解决这个问题?

【问题讨论】:

标签: javascript php ajax codeigniter codeigniter-2


【解决方案1】:

对于 Codeignitor 中的跨域资源,您必须在 <?php 标记开始后立即将这一行包含在控制器中

header('Access-Control-Allow-Origin: *');

【讨论】:

  • 在哪里查看页面或控制器?
  • 在你的 url example.com/index.php/home/getCity?city=d 我可以看到 home 是你的控制器所以在 contorller 中包含这一行
  • 是的,它的工作原理。而对于 ajax 函数,我们需要添加 crossDomain: true,
  • 嗨,我的情况是这样的。 “XMLHttpRequest 无法加载 mysitenotwork.com/assets/css/prism.css。请求的资源上不存在 'Access-Control-Allow-Origin' 标头。因此不允许访问源 'localhost'。”怎么解决?
  • 使用同一行标题('Access-Control-Allow-Origin: *');在你的控制器 之后
【解决方案2】:
<?php
header('Access-Control-Allow-Origin: *');
class Myclass extends CI_Controller {

}

这在 codeigniter 中工作得非常好

【讨论】:

    猜你喜欢
    • 2017-12-06
    • 1970-01-01
    • 2018-09-19
    • 2017-06-15
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    相关资源
    最近更新 更多