【发布时间】:2016-03-31 04:07:45
【问题描述】:
我有一个 laravel 应用程序,我创建了各种 api,它们等待我的应用程序发布/获取。
我正在开发一个离子应用程序,它利用 Ngresource 并发送发布请求,但是在测试时我收到以下错误:
XMLHttpRequest 无法加载http://IPADDRESS/api/test 响应 预检请求未通过访问控制检查:否 请求中存在“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“http://localhost:8100” 访问。
我已经尝试在我的 laravel 应用程序上将我的 api 路由包装在一个包含中间件 CORS 的中间件组中。我还在我的 Kernel.php 文件中注册了中间件。请参阅下面的 cors 中间件。
<?php namespace App\Http\Middleware;
use Closure;
use Illuminate\Contracts\Routing\Middleware;
use Illuminate\Http\Response;
class CORS implements Middleware {
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
return $next($request)->header('Access-Control-Allow-Origin' , '*')
->header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE')
->header('Access-Control-Allow-Headers', 'Content-Type, Accept, Authorization, X-Requested-With');
}
}
但这并没有什么不同,我得到了同样的错误。
【问题讨论】:
-
尝试针对您的环回 ip 127.0.0.1 修改 www.mylarveltest.com 的主机文件并尝试使用 mylarveltest.com/api/test
-
这与 SSH 有什么关系?
-
抱歉 @AbhishekSingh 我的 laravel 网站已经托管我的 ionic 应用程序在本地托管
-
@Wolrab 本地托管的标志性应用程序由于跨源效应而无法向 Web 托管的应用程序发送请求。请构建应用程序并在手机上部署。它应该工作
-
@AbhishekSingh 即使我使用离子视图它仍然无法工作吗??
标签: angularjs ionic-framework laravel-5.1