同样的路由,相似的访问,一个200,一个404帮忙看下,错误在哪里

1. 运行环境

1). 当前使用的 Laravel 版本?

8

2). 当前使用的 php/php-fpm 版本?

PHP 版本:7.4

php-fpm 版本:

3). 当前系统

centOs7

4). 业务环境

开发

5). 相关软件版本

mysql5.6

2. 问题描述?

路由
Route::get(‘/db/showTable’, [App\Http\Controllers\DBController::class, ‘showTable’]);
Route::get(‘/tables/shows/{tableName}’, [App\Http\Controllers\DBController::class, ‘showTableField’]);

控制器:
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;

class DBController extends Controller
{
public function showTable(){
$tablesNames = DB::select(“select table_name from information_schema.tables where table_schema=’test’”);
//dd($tablesNames);
foreach ( $tablesNames as $key => $value){
echo “$value->table_name
“;
}
echo <<<EOF

EOF;
}

public function showTableField(Request $request){
    //dd($request);
    // dd(123);
    // dd($request->all());
    $tableName = $request->tableName;
    $fields = DB::select("show columns from $tableName");
    print_r('<pre>');
    print_r($fields);
    print_r('</pre>');
}

}

3. 您期望得到的结果?

匹配路由

4. 您实际得到的结果?

同样的路由,相似的访问,一个200,一个404帮忙看下,错误在哪里

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 5
public function showTableField(Request $request, $tableName){ 
    $fields = DB::select("show columns from $tableName");
    print_r('<pre>');
    print_r($fields);
    print_r('</pre>');
}

下次提问好好排版,才会有人愿意回答你的问题。

3年前 评论

上面回答的算其一,其二是好好读文档 正确答案原理传送门

3年前 评论
MArtian 3年前
leo 3年前

路由缓存问题吧,开发就把路由缓存关了吧

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!