My billingController
从/billing/total
返回
{"hours":23.25,"distances":209,"durations":3.5}
我想在homeController
调用的仪表板上显示这一点
如何获取对该数据的内部获取请求?
理想情况下,应该向该URL
发送AJAX
调用,获取该数据并使用Javascript
进行解析。
如果你仍然想通过另一个Laravel控制器向该URL发送请求,你应该使用以下-
$request = Request::create('/billing/total', 'GET');
$response = Route::dispatch($request);
如果是GET
请求或
$request = Request::create('/billing/total', 'POST');
$response = Route::dispatch($request);
如果是CCD_ 9请求。
在任何内部Laravel请求中都会得到一个空白请求(正文/查询数据),这是因为$request
实际上引用了当前请求(启动器),而不是新创建的请求(内部)。
以下面的中间件为例(获取请求的整个主体):
public function handle(Request $request, Closure $next)
{
// Works for external requests (string)
// Blank for internal requests (null)
$request->getContent();
// Works for all requests (array)
$request->post(); // array
}
作为指针,对于获取单个请求元素,可以使用$request->input('key')
(查询/正文)、$request->body('key')
(正文)或$request->query('key')
(查询)进行获取。如果使用Input
facade,您将遇到与上面提到的空白值相同的问题。