没有不值得去解决的问题,也没有不值得去学习的技术!

Reusing and Fine-Tuning Desktop RESTful APIs for Mobile Apps in Yii 2.0 (Part 2)

Get the controller ID (Yii::$app->controller->id). When the route is /v1/mobile/plans/2, its value is mobile/plan

1. The topic detail API returns the topic’s operation permissions, which include all of the current user’s permission buttons and can be customized for the mobile end (when the status is 2: Pending Review, the edit topic permission is 0: None, and the update topic permission is 0: None).

2. Edit the method file: \api\rests\plan\ViewAction.php to get the controller ID (Yii::$app->controller->id). When the route is /v1/plans/2, its value is plan, as shown in Figure 1.

Get the controller ID (Yii::$app->controller->id). When the route is /v1/plans/2, its value is plan
Figure 1

3. Edit the method file: \api\rests\plan\ViewAction.php to get the controller ID (Yii::$app->controller->id). When the route is /v1/mobile/plans/2, its value is mobile/plan, as shown in Figure 2.

Get the controller ID (Yii::$app->controller->id). When the route is /v1/mobile/plans/2, its value is mobile/plan
Figure 2

4. To customize for the mobile end (when the status is 2: Pending Review, the edit topic permission is 0: None, and the update topic permission is 0: None), you can evaluate the controller ID (Yii::$app->controller->id) and handle each case accordingly. Edit the method file: \api\rests\plan\ViewAction.php.

5. When the route is /v1/plans/2, both $actions[‘edit’] and $actions[‘update’] are 1, as expected, as shown in Figure 3.

When the route is /v1/plans/2, both $actions['edit'] and $actions['update'] are 1, as expected
Figure 3

6. When the route is /v1/mobile/plans/2, both $actions[‘edit’] and $actions[‘update’] are 0, as expected, as shown in Figure 4.

When the route is /v1/mobile/plans/2, both $actions['edit'] and $actions['update'] are 0, as expected
Figure 4

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系