Laravel Axios-重定向到带有数据的控制器

Laravel Axios-重定向到带有数据的控制器,laravel,vue.js,axios,Laravel,Vue.js,Axios,我试图用数据重定向到控制器,并在控制器中使用该数据(我使用的是laravel) 问题是$request['ProductId']为null 这意味着Axis请求在没有数据的情况下被重定向 注:我不想返回数据,我只想使用控制器中的数据。POST-使用axios(axios.POST(“/buy”,{..)发出的请求可能是准确的 但是GET-重定向(window.location=“/buy”)将不包含任何数据。由于这是GET-请求,您需要将数据添加到uri或查询字符串中,如下所示:/buy/:Pr

我试图用数据重定向到控制器,并在控制器中使用该数据(我使用的是laravel)

问题是
$request['ProductId']
null

这意味着Axis请求在没有数据的情况下被重定向


注:我不想返回数据,我只想使用控制器中的数据。
POST
-使用axios(
axios.POST(“/buy”,{..
)发出的请求可能是准确的

但是
GET
-重定向(
window.location=“/buy”
)将不包含任何数据。由于这是
GET
-请求,您需要将数据添加到uri或查询字符串中,如下所示:
/buy/:ProductId

现在
Route::get('/buy','ShoppingController@create“);
将始终得到一个空的
$request


我不确定你想实现什么,所以我不能重写你的代码,但是如果你删除
window.location=“/buy”
,你至少会看到控制台输出。

如果我理解正确,你的问题是你看不到“dd”的返回

你的console.log在窗口之后是正常的!而且axios没有dd!你必须返回才能看到答案

控制器

 public function create(Request $request)
{
     return $request['ProductId'];
}
vue先生

在你的路线上

/* web.php */
Route::post('/buy','ShoppingController@create');

基本上,您不能同时使用这两个具有不同路由方法的创建函数,同时希望获取产品id。您的post请求将在这种情况下起作用,但get请求不会。这就是为什么dd($request['ProductId'))为空。无论何时使用get请求,都不能将请求用作参数。$request作为参数仅用于post请求

如需进一步解释,请阅读laravel文件

因此,为了解决您的问题,您可以删除此行

window.location = "/buy";
并通过以下方式在控制器中显示您的post数据

public function create(Request $request) {
   dd($request->all())
}

添加路线plz并在.Vuery
dd($request->ProductId);
而不是不可能的“dd”,您是否需要
return$request['ProductId']
和.vue
console.log(响应);
但是要删除您的
窗口。location
查看您的登录控制台!和路由器中的remove get!删除此窗口。location=“/buy”您在ajax调用中获取dd数据,但在获取数据时,您是window.location=“/buy”这样做的
/*js codes*/
        Submit : function(){
            axios.post('/buy',{
                ProductId : this.id,
                //ProductId : "1";//
                ProductAmount : this.temporaryamount
                //ProductAmount : "12000";//
            })
                .then(function (response) {
                    console.log(response);
                    //Remove window.location, or if you dont remove you dont see console.log!
                    //window.location = "/buy";

                })
                .catch(function (error) {
                    console.log(error);
                })
        }
/* web.php */
Route::post('/buy','ShoppingController@create');
window.location = "/buy";
public function create(Request $request) {
   dd($request->all())
}