许久未更新文章,近期也是相当忙碌,有兴趣可以了解下我们的最新项目:Gadmin企业级开发平台
今天我们的教程是:Tpflow工作流引擎-网关模式详解
解决问题:
现在前后端,APP,小程序都是主流,应用多分离,模块多,都是趋势。之前的3.X版本是不能解决这些问题的。
思路与代码:
Tpflow在5.0推出了数十个的API接口(详细看文档及视频教程)
我们如何在移动端,管理后台来统一调用工作流引擎,下面直接上代码:
在Tpflow配置中,我们开启网关模式:
'gateway_mode' =>2,//1,默认使用Tp的助手函数 'gateway_action' =>'\\sys\\Gateway',//自定义方法返回数据 命名空间 中的GetUserInfo
然后呢,我们在extend目录下,新建:sys/Gateway.php 文件。
下面看下:文件源代码:
<?php namespace sys; use app\api\controller\Oauth; class Gateway { public function GetUserInfo(){ $app = app('http')->getName(); if($app =='api'){ $oauth = app('app\api\controller\Oauth'); $userinfo = $oauth->authenticate();; return ['uid'=>$userinfo['uid'],'role'=>$userinfo['role']]; } if($app =='gadmin'){ return ['uid'=>session('softId'),'role'=>session('sfotRoleId')]; } } } ?>
解析:
我们通过对应用的判断,如果是API接口,我们实例化API接口,从接口返回给工作流对应的用户权限及用户信息。这样就能确保工作流的正常运行。
同时我们还需要确保 原来后台模块的运行,仍然是吧,session 数组传递给 工作流即可。
工作流手册、视频教程:https://gadmin8.com/index/product.html VIP用户
本文为逆天的蝈蝈的文章,转载无需和我联系,但请注明cojz8.com