所以问题很简单:
我试图这样做:
$this->call('POST', '/my/route', ['params' => 'array'], [], ['X-Custom' => 'header']);
但是当我在控制器中拨打Request::header('X-Custom')
时,我没有得到它。
是的,它可以在Request::server('X-Custom')
中找到,但它不是我需要的。
所以我需要在Request::header()
中获取它。
PS:Laravel 4
答案 0 :(得分:12)
您需要正确形成标题,否则将被忽略。试试这个:
this->call('POST', '/my/route', ['params' => 'array'], [], ['HTTP_X-Custom' => 'header']);
查看您的请求时,HTTP_
将被删除
答案 1 :(得分:0)
答案 2 :(得分:0)
在Laravel> = 5.1中,调用方法基于其定义:
call($method, $uri, $parameters = [], $cookies = [], $files = [], $server = [], $content = null)
在headers数组之前需要一个额外的数组:
this->call('POST', '/my/route', ['params' => 'array'], [], [], ['HTTP_X-Custom' => 'header']);