Laravel 流明反射异常
Posted
技术标签:
【中文标题】Laravel 流明反射异常【英文标题】:Laravel Lumen ReflectionException 【发布时间】:2017-06-18 09:34:38 【问题描述】:我已经看过其他关于如何修复 laravel Lumen 中的 ReflectionException 问题的帖子,使用这个:
$request = Illuminate\Http\Request::capture();
$app->run($request);
但是它并没有解决我的问题。我有一个名为 AccountController.php 的控制器并放置在 app/Http/Controllers/Account 文件夹中,代码如下:
<?php
namespace App\Http\Controllers\Account;
use App\Account;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class AccountController extends Controller
public function createNewAccount(Request $request)
$newAccount = Account::create($request->all());
return response()->json($newAccount);
这是我放置在 /routes/web.php 中的路由文件:
<?php
$app->get('/hello', function () use ($app)
return 'Hello World!';
);
$app->group(['prefix' => 'api/v1','namespace' => 'App\Http\Controllers\Account'], function($app)
$app->post('account','AccountController@createNewAccount');
);
当我使用 Postman 进行测试时,返回简单“Hello World”的 get 请求工作正常,但对 api/v1/account/createNewAccount 的 POST 调用无论我做什么都会失败:
Container.php 第 681 行中的反射异常: 类 App\Http\Controllers\App\Http\Controllers\Account\AccountController 不存在 在 Container.php 第 681 行 在 Container.php 第 681 行中的 ReflectionClass->__construct('App\Http\Controllers\App\Http\Controllers\Account\AccountController') 在 Container->build('App\Http\Controllers\App\Http\Controllers\Account\AccountController') 在 Container.php 行 565 在 Application.php 第 208 行中的 Container->make('App\Http\Controllers\App\Http\Controllers\Account\AccountController') 在 RoutesRequests.php 第 677 行中的 Application->make('App\Http\Controllers\App\Http\Controllers\Account\AccountController') 在 RoutesRequests.php 第 644 行中的 Application->callControllerAction(array(true, array('uses' => 'App\Http\Controllers\App\Http\Controllers\Account\AccountController@createNewAccount'), array())) 在 RoutesRequests.php 第 629 行中的 Application->callActionOnArrayBasedRoute(array(true, array('uses' => 'App\Http\Controllers\App\Http\Controllers\Account\AccountController@createNewAccount'), array())) 在 RoutesRequests.php 第 528 行中的 Application->handleFoundRoute(array(true, array('uses' => 'App\Http\Controllers\App\Http\Controllers\Account\AccountController@createNewAccount'), array())) 在 RoutesRequests.php 第 782 行中的 Application->Laravel\Lumen\Concernsclosure() 在 RoutesRequests.php 第 534 行中的 Application->sendThroughPipeline(array(), object(Closure)) 在 RoutesRequests.php 第 475 行中的 Application->dispatch(object(Request)) 在 index.php 第 29 行中的 Application->run(object(Request))
我正在使用“laravel/lumen-framework”:“5.4.*”。
【问题讨论】:
【参考方案1】:没有回复这个特定的问题,我决定用 Dingo API 构建我的 API:https://github.com/dingo/api 这是一个用 Laravel/lumen 构建 API 的好包。他们创建了自己的路由系统,从那以后一切都变得更好了。
【讨论】:
以上是关于Laravel 流明反射异常的主要内容,如果未能解决你的问题,请参考以下文章