我有一个使用Laravel 4构建的以API为中心的设置,包括REST API,前端和管理面板.前端和管理员都使用内部请求来使用API.
我发出这样的内部请求:
$request = Request::create($endpoint, $method, $parameters, $cookies, $files, $server, $content); $this->response = Route::dispatch($request);
一切正常.
现在我想使用类似于AWS的方法保护API ,当我创建上面的请求时,我还想设置一些自定义标头(api密钥,签名,时间戳).
我还没有找到一种方法来将标头添加到自定义请求中.使用内部请求时这可能吗?
结果设置标题就像做一样简单
$request->headers->set('MyHeaderName', 'header value');
在发送请求之前.
捕获(以及我在尝试时不起作用的原因)是我必须使用API
Route::getCurrentRequest()
来获取我的自定义请求(而不是仅询问请求外观):
$request = Route::getCurrentRequest(); $all_headers = $request->header(); $specific_header = $request->header("SomeHeaderName");