Laravel 5 CORS 问题与 Ionic Angular

Posted

技术标签:

【中文标题】Laravel 5 CORS 问题与 Ionic Angular【英文标题】:Laravel 5 CORS-issue vs. Ionic Angular 【发布时间】:2015-11-28 07:32:41 【问题描述】:

我目前正在使用 Laravel 5 作为 Rest-server 制作 Ionic/Cordova 应用程序(我第一次编写 php 服务器)。 使用 Postman,我所有的 Get/Post/Update/Delete 功能都可以在 Laravel 和客户端(Ionic Cordova)上运行。我可以使用Chrome Allow-Control-Allow-Origin plugin. 向http://postcatcher.in 发送数据。如果没有插件,我会收到此错误:

由于这个问题显然只发生在开发模式下(在浏览器中测试客户端时),我认为使用插件进行开发是可以的。

当我尝试通过 Ionic Cordova 向 Laravel 发送数据时,我收到此错误(即使使用 Allow-Control-Allow-Origin 插件:

我尝试了多种方法,例如https://github.com/barryvdh/laravel-cors,但似乎对我不起作用。本论坛中的建议也没有使用 CORS 中间件。 https://laracasts.com/discuss/channels/requests/laravel-5-cors-headers-with-filters

我认为这是一个 Laravel 问题,但我不是 100% 确定。

要发布服务器,我使用 php artisan serve,给它 localhost:8000。 对于应用程序,我写:ionic serve,它给出了 localhost:8100

最后,这是我用来在 Ionic 端发送数据的代码:

.factory('userFactory', function($http, $q) 
 return
    createuser : function(info) 

        var deferred = $q.defer();
        $http.post('localhost:8000/users', info) 
        .success(function(response, status)
            deferred.resolve(response);
        )
        .error(function() 
            console.log('SOMETHING WENT WRONG');
        );
                return deferred.promise;
  

 
)

任何帮助非常感谢。真的被这个问题困住了。

【问题讨论】:

如果您只是构建一个 PHP REST API,我建议改为 Lumen。非常轻量级的 Laravel 版本。更少的开销,更快的等 我会考虑到这一点。谢谢!刚刚使用 Laravel,因为我认为我需要在应用程序上进行实时聊天 - 我认为使用 Laravel 进行聊天的问题会更小。 【参考方案1】:

原来我是个十足的白痴。我只需要在 URL 的前面写上“http://”。菜鸟失误。 编辑:我会将这个问题保留半小时,以防有人对我提出建议。

【讨论】:

以上是关于Laravel 5 CORS 问题与 Ionic Angular的主要内容,如果未能解决你的问题,请参考以下文章

Laravel API 和 Ionic 2 客户端:CORS 没有“Access-Control-Allow-Origin”标头

Laravel 5.7 API 与 CORS 问题

在laravel 5.6的cors与护照和vues js与axios

Laravel 5.4 + jQuery CORS 请求

被 ionic-5 angular 中的 CORS 策略阻止

在 Ionic 4 应用程序中无法绕过 CORS