はZend\Mvc\Controller\AbstractRestfulController#requestHasContentType(...)
、 を使用してコンテンツをチェックします$request->getHeaders()->get('content-type');
。
今、私は次のようなcURLリクエストを送信しています:
# curl -i http://project.dev/seminars/1 -H 'Accept: allication/xml'
HTTP/1.1 200 OK
Date: Fri, 14 Jun 2013 16:06:33 GMT
Server: Apache/2.2.16 (Debian)
X-Powered-By: PHP/5.3.3-7+squeeze15
Vary: Accept-Encoding
Content-Length: 1108
Content-Type: text/html
したがって、コンテンツ タイプはtext/html
. しかし、私が得ている出力は次のfalse
とおりです。
$test = $this->getRequest()->getHeaders()->get('content-type');
var_dump($test);
// output: bool(false)
REST 要求のコンテンツ タイプを取得するために、私が間違っていることと、どのようにすればよいですか?
Accept
悪い -からの値を期待していました$request->getHeaders()->get('content-type')
。代わりに を使用する必要があります$this->getRequest()->getHeaders()->get('Accept')
。