Rest 如何发送测试API的标头

Rest 如何发送测试API的标头,rest,zend-framework2,phpunit,Rest,Zend Framework2,Phpunit,我有一个ZF2应用程序,在实现API时,我决定对每个请求进行令牌身份验证。一切正常,但我无法编写单元测试,因为我似乎无法设置授权的标题: 在我的PHPUnit测试案例中: // Option 1 $_SERVER['HTTP_AUTHORIZATION'] = 'Authorization:Bearer asdfghjkl'; $this->dispatch('/api/v1.0/someResource'); // Option 2 headers = new \Zend\Http\H

我有一个ZF2应用程序,在实现API时,我决定对每个请求进行令牌身份验证。一切正常,但我无法编写单元测试,因为我似乎无法设置授权的标题:

在我的PHPUnit测试案例中:

// Option 1
$_SERVER['HTTP_AUTHORIZATION'] = 'Authorization:Bearer asdfghjkl';
$this->dispatch('/api/v1.0/someResource');

// Option 2
headers = new \Zend\Http\Headers;
$header = $headers->addHeader()->fromString("Authorization:Bearer asdfghjkl");
$this->getRequest()->setHeaders($header);
$this->dispatch('/api/v1.0/someResource');
然后在我的EventManager中,我尝试:

$request = $e->getRequest();
$headers = $request->getHeaders();
var_dump($headers);
或:

两者均未显示我的授权标头


那么,我如何设置用于测试http头身份验证的头呢?

@HaimEvgi这里发布的解决方案是,如果您将php用作cgi而不是apache模块,那么就可以使用它。我是作为一个模块运行的,即使按照建议运行,也没有解决这个问题。
$headers->has("Authorization")