PUT http://project.local/logo
Headers:
· Accept: application/json
· Content-Type: multipart/form-data
Body:
· name: Logo
· logo: C:\Projects\image.png (точнее я меняю тип на "File" и выбираю его в диалоговом окне)
Конфигурация:
Код: Выделить всё
'urlManager' => [
'rules' => [
'POST,PUT logo' => 'main/default/index',
],
],
Код: Выделить всё
namespace app\modules\main\controllers;
use yii\rest\Controller;
class DefaultController extends Controller
{
protected function verbs()
{
return [
'index' => ['post', 'put'],
];
}
public function actionIndex()
{
$model = new Logo();
$model->image = UploadedFile::getInstanceByName('logo');
$file = Yii::getAlias('@webroot') . '/logo.' . $model->image->extension;
$model->image->saveAs($file);
return ['status' => 'success'];
}
}
Проблема заключается в том, что не удаётся загрузить файл HTTP-методом PUT, массив $_FILES просто пустой. Но если только изменить метод на POST — всё отрабатывает отлично. Подскажите, пожалуйста, в чём проблема и можно ли реализовать загрузку файла с помощью PUT и класса UploadedFile?