AngularJS $http POST 转成GET

AngularJS $http POST turn into GET

我有路线

Route::post('/updateLogo', 'CaptivePortalController@updateLogo');

那我在这里做一个POST

$http({
    method: 'POST', <----- I did a POST 
    url: '/updateLogo',
    headers: { 'Content-Type': undefined },
    transformRequest: function (data) {
        console.log("data coming into the transform is ", data);
        var formData = new FormData();
        formData.append("company_logo_path", data.files);
        console.log($scope.files.company_logo_path);
        return formData;
    },
    data: { files: $scope.files.company_logo_path }
})

.then(function successCallback(response) {
    console.log("success");
    console.log(response);
    $('.save-fade').delay(500).fadeOut(1000);
}, function errorCallback(response) {
    console.log("fail");
    console.log(response);
});

当我浏览文件并提交表单时,我不断收到

405 在我的 Network tabChrome Dev Tool


然后,我点击它,我看到了

MethodNotAllowedHttpException in RouteCollection.php line 218:

我知道我不应该向 POST 路由发出 GET,但为什么它发出 GET 请求而不是 POST?

Request URL:http://l.ssc.com:8888/en/updateLogo
Request Method:GET <------ 
Status Code:405 Method Not Allowed
Remote Address:127.0.0.1:8888
Referrer Policy:no-referrer-when-downgrade

这里哪里做错了?

有什么提示吗?

这看起来像是在进行重定向。 参考:

请检查您在服务器上的路由配置,确保它与您请求的完全相同。

如果您正在请求“/myroute”,但您已将路由定义为“/myroute/”,那么您的服务器可能会重定向到“/myroute”。

所有重定向都是使用 GET 完成的。 由于该路由不允许 GET 请求,因此它返回 405。