Decode.php 889 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. declare (strict_types = 1);
  3. namespace app\common\middleware;
  4. /**
  5. * 解码中间件 前置行为的中间件
  6. */
  7. class Decode
  8. {
  9. /**
  10. * 处理请求
  11. *
  12. * @param \think\Request $request
  13. * @param \Closure $next
  14. * @return Response
  15. */
  16. public function handle($request, \Closure $next)
  17. {
  18. // var_dump("解码前入参");
  19. $params = $request->post();
  20. // var_dump($params);
  21. if($request->noNeedDecode) {
  22. // var_dump('not Decode');
  23. return $next($request);
  24. }
  25. $data = [];
  26. foreach($params as $key => $val) {
  27. $data['解码('.$key.')'] = $val;
  28. }
  29. // var_dump('Decode');
  30. // var_dump("解码后入参");
  31. // var_dump($data);
  32. $request->withPost($data);
  33. // 添加中间件执行代码
  34. return $next($request);
  35. }
  36. }