2015-09-09 60 views
9

我想在我的项目中实现用户注册/登录过程,其中我在angular中创建了Web客户端应用程序,移动客户端在android上。在Yii2 Rest Api中使用Yii2用户注册用户

我正在使用REST进行客户端/服务器通信。我在我的yii开发的后端安装了yii2-user。我想要的是创建一个休息API,使我的每个客户端应用程序使用yii2-user用户注册和登录过程。那么在客户端如果用户想要注册的请求将由yii-2用户模块处理?任何建议,我该如何实现这一目标? 或者有没有更好的方法在Yii2的REST API中进行注册和身份验证?

+1

你有没有尝试过什么? –

+2

对于注册,您可以查看yii2用户插件的现有注册码。对于登录你可以建立一个oauth接口。 – devOp

+0

@devOp我需要做一个UserController来扩展ActiveController并为其提供一个yii2用户模型的路径吗?你能否详细说明一下?我的基本问题是让用户注册/登录Api,以便移动和Web客户端可以使用它。 – james

回答

4

使用yii2用户控制器如dektrium“UserController中”和\警予\其他\ ActiveController扩展它,那么你可以指定在UserController中的模型类为

public $modelClass = 'dektrium\user\models\User'; 

在休息后要求使用一些参数为rest请求提供json响应。即

register-form[username]=YOURUSERNAME&register-form[password]=YOURPASS&register-form[email][email protected]&someparam=true 

在控制器

$model->load(\Yii::$app->request->post()) && $model->register() 

将成功地注册用户。

您可以从这里扩展这个想法。欢呼:)

+1

有没有办法做到这一点,而无需修改dektrium用户模块类? – JJPunch