我想弄清楚如何發送PUT請求中的參數。我有一個很好的JavaScript接口,所以我知道服務器端工作,但我的單元測試從不正確地發送PUT參數。以下是我已經試過:如何在ZendFramework2中發送PUT請求?
$this->request->getQuery()->set("id", $id);
$params = array(
'attribute' => 'email',
'email' => '[email protected]',
);
// Set the data to be validated
$this->request->setMethod('PUT');
// Send the additional parameters
$this->request->setContent(json_encode($params));
這犯錯,因爲服務器尋找$ params鍵「屬性」,但在服務器上$ params數組是空的 - 沒有$ PARAMS中獲得通過。也是一樣,當我嘗試
foreach ($params as $n => $v) {
$this->routeMatch->setParam($n, $v);
}
和
foreach ($params as $n => $v) {
$this->request->getQuery()->set($n, $v);
}
和
foreach ($params as $n => $v) {
$this->request->getPost()->set($n, $v);
}
在zf2中發送PUT參數的正確方法是什麼?
您可以使用'$ this-> request-> getPost() - > fromArray'來代替foreach循環來複制數組。 – Maxence 2013-11-15 13:19:36