routes.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. use App\Admin\Controllers\DistAppearanceTemplateController;
  3. use App\Admin\Controllers\RpcController;
  4. use App\Admin\Services\RpcService;
  5. use Illuminate\Routing\Router;
  6. use Illuminate\Support\Facades\Route;
  7. use Dcat\Admin\Admin;
  8. use JsonRPC\Server;
  9. Admin::routes();
  10. Route::group([
  11. 'prefix' => config('admin.route.prefix'),
  12. 'namespace' => config('admin.route.namespace'),
  13. 'middleware' => config('admin.route.middleware'),
  14. ], function (Router $router) {
  15. //主页
  16. $router->get('/', 'HomeController@index');
  17. // 定义切换语言的路由
  18. $router->get('language-switch','LanguageController@index');
  19. // 不需要登录的路由
  20. $router->get('captcha','CaptchaController@generate');
  21. //文件夹
  22. $router->resource('site-folder', 'SiteAlbumFolderController');
  23. //相册
  24. $router->resource('site-album', 'SiteAlbumController');
  25. //相册日志
  26. $router->get('site-album-log', 'SiteAlbumLogController@index');
  27. });
  28. // 定义RPC服务
  29. Route::post('/rpc', function (Request $request) {
  30. // 创建 JSON-RPC 服务端
  31. $server = new Server();
  32. // 注册服务类
  33. $server->getProcedureHandler()
  34. ->withClassAndMethod('siteAlbumPaginate', new RpcService(), 'siteAlbumPaginate')
  35. ->withClassAndMethod('siteAlbumGet', new RpcService(), 'siteAlbumGet')
  36. ->withClassAndMethod('siteAlbumFolderSelectOptions', new RpcService(), 'siteAlbumFolderSelectOptions')
  37. ->withClassAndMethod('siteAlbumFolderSelectOptionsAll', new RpcService(), 'siteAlbumFolderSelectOptionsAll')
  38. ->withClassAndMethod('siteAlbumGetByIds', new RpcService(), 'siteAlbumGetByIds')
  39. ->withClassAndMethod('siteAlbumFolderAllNodes', new RpcService(), 'siteAlbumFolderAllNodes');
  40. // 处理请求并返回响应
  41. return response()->json(json_decode($server->execute()));
  42. });
  43. /*
  44. * 重写上传路由,修改tinymce上传路径
  45. */
  46. $attributes = [
  47. 'prefix' => admin_base_path('dcat-api'),
  48. 'middleware' => config('admin.route.middleware'),
  49. 'as' => 'dcat-api.',
  50. ];
  51. app('router')->group($attributes, function ($router) {
  52. $router->post('editor-md/upload', function () {exit;})->name('editor-md.upload');
  53. $router->post('tinymce/upload', 'App\Http\Controllers\TinymceController@upload')->name('tinymce.upload');
  54. });