Laravel问题没有'Access-Control-Allow-Origin'

时间:2017-06-08 16:28:50

标签: laravel

我正在撰写一个非常常见的主题,但我绝望,浪费了两天时间来努力完成这项工作。

我在Chrome上,尝试制作我的第一个登录/注册应用程序,在将数据发送到后端时,我收到以下错误:

  

XMLHttpRequest无法加载http://192.168.1.133:8100/api/login。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:8100”访问。响应的HTTP状态代码为500。

我正在从AngularJS发出一个POST请求,如下所示:

$scope.data = "UserName"; // for example

$scope.register = function() {

      var withAjax = $http.post('http://192.168.1.133/api/register', $scope.data);

      withAjax
        .success(function(answer){
           console.log(answer.message);
      })
        .error(function(answer) {
          console.log("error");
        });
    }
])

Laravel API后端很简单,只需返回'正确'。

public function login (Request $request) {

  $inputArray = $request->all();

  return response()->json(["message" => "Login: All Correct"]);
}

在我的前端应用程序中,我提供了所有类型的连接:

<allow-navigation href="http://*/*" />
<allow-navigation href="*" />
<access origin="*"/>

在PHP中,我尝试了所有。已禁用API的CSFR令牌,并正确安装了“ barryvdh / laravel-cors ”并配置了如下的cors文件:

return [
    'supportsCredentials' => false,
    'allowedOrigins' => ['*'],
    'allowedHeaders' => ['*'],
    'allowedMethods' => ['*'],  // ex: ['GET', 'POST', 'PUT',  'DELETE']
    'exposedHeaders' => [],
];

当我可以制作,来回发送数据时,我会关心保护。现在我决定打开“全部”以使其变得简单明了。

我为此疯狂,只是试图解决这个问题而失去了两天。 任何线索都会有所帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个适用于Chrome的插件,可能会对您有所帮助。 CORS