YII2 resfull 创建自定义 请求 方法 修改默认请求 覆盖prepareDataProvider

YII2 resfull 创建自定义 请求 方法 修改默认请求 覆盖prepareDataProvider

YII2 resfull 请求的时候发现 GET PUT post 不是 自己想要的 地址
可以 用 prepareDataProvider覆盖
或者 Yii::$app->request->method 获取请求方式 选择控制器 对应的方法

<?php
namespace api\controllers;
use Yii;
use yii\web\Controller;
use yii\rest\ActiveController;
use yii\web\Response;
use yii\helpers\Json;

/**
 * Site controller
 */
class SiteController extends ActiveController
{
    public $modelClass = 'api\models\User';

    public function actionApi( )
    {


        Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
        return Yii::$app->request->method ;

    }
    public function actions() {
        $actions = parent::actions();

//        // 注销系统自带的实现方法
//        unset($actions['index'], $actions['update'], $actions['create'], $actions['delete'], $actions['view']);
//        $actions['index']['actionViews'] = [$this,''];
        //如果使用Gii为您的模型生成CRUD,您定义了一个搜索模型类,然后您可以使用它来过滤结果,您所要做的就是覆盖强制它的prepareDataProvider
        $actions['index']['prepareDataProvider'] = [$this, 'actionViews']; // 默认 GET 请求 访问actionViews 方法

        return $actions;



    }

    public function actionViews()
    {
        //这里可以做你想做的
        Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
        return  json_encode(Yii::$app->request->get());
        return 1326; //返回 json  数据
    }




}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值