在两个控制器上工作时每次请求都得到 404

Got 404 on every request when working on two controllers

我正在使用 slim-3.In 应用程序开发后端系统我有多个控制器,比如如果 Books 和 Users 有两个不同的控制器,其中每个控制器的所有调用都是 placed.So 当我在 index.php 文件中声明控制器,然后只有一个控制器请求接受其他控制器请求 return 404 页面不是 found.When 我删除了一个控制器的声明,然后其他控制器工作。 例如,我有两个控制器,如用户控制器和提供者控制器,当我在 index.php 中声明它们时,只有提供者控制器是 worked.But 当我删除提供者控制器的声明时,用户控制器 api 调用是运行良好,但是当我添加提供者控制器时,用户控制器 api 调用 return 404。 这是 index.php 代码

<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require '../vendor/autoload.php';

$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response, 
array $args) {
$name = $args['name'];
$response->getBody()->write("Hello, $name");

return $response;
});
require '../src/controllers/UserController.php';
require '../src/controllers/ProviderController.php';
require '../src/models/GeneralResponse.php';
require '../src/database/UserOperations.php';
require '../src/database/ProviderOperations.php';
require '../src/models/User.php';
require '../src/models/Provider.php';
require '../src/utils/Utils.php';

$app->run(); 

这里是供应商控制器

<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
require '../vendor/autoload.php';
$app = new \Slim\App;
$app->post('/provider/register',function($request,$response,$args){
    try{
    $appresponse=new GeneralResponse();
    $formDataArry = $request->getParsedBody();
    $email=$formDataArry['email'];
    $passwordRaw=$formDataArry['password'];
    $firstname=$formDataArry['firstname'];

});

这里是用户控制器

<?php
require '../vendor/autoload.php';
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

$app = new \Slim\App;
//Registration of user end point
$app->post('/user/register',function($request,$response,$args){
    try{
    $appresponse=new GeneralResponse();
    $formDataArry = $request->getParsedBody();
    $email=$formDataArry['email'];
    $passwordRaw=$formDataArry['password'];
    });

基本上我在每个控制器中创建了单独的 \Slim\App 实例,这些实例会覆盖索引文件的实例,因此它忽略了每个控制器的要求,只需删除 $app = new \Slim\App;来自控制器文件,但 index.php.Problem 将由此修复。