为什么laravel返回类不存在错误?但是一切似乎都很好

时间:2019-06-30 05:56:56

标签: php laravel laravel-5

我在app/services文件夹中创建了服务,并且正在使用它作为控制器。在services文件夹中,我有以下内容。

namespace App\Services;

use GuzzleHttp\Client;

class SubscriptionService
{
    private $subUsername = 'M****************b';
    private $subPassword = 'V********g';
    private $subSource = 'o*********k';
    private $subMinisite = 'a*******m';

    public function pinVerify($request)
    {
        $DataArray = [];
        $client = new Client();
        $route = 'http://b*******e.com/****/P***y.php';
        $params = [
            'form_params' => [
                'Username' => $this->subUsername,
                'Password' => $this->subPassword,
                'userID' => $request->user_id,
                'pincode' => $request->pin_code,
            ]
        ];

        $result = $client->request('POST', $route, $params);
        $body = $result->getBody();

        $bodyContent = $body->getContents();
        if ($bodyContent === 1) {
            $DataArray['message'] = 'Failed because of system error';
            $DataArray['status'] = 'failed';
        } else {
            $DataArray['message'] = 'Sorry provided pincode is wrong.';
            $DataArray['status'] = 'failed';
        }

        return $DataArray;
    }
}

在控制器中,我正在使用一种如下所示的方法。

namespace App\Http\Controllers\Api;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Services\SubscriptionService as Subscription;

class XyzController extends Controller
{
    public function verifyPinCode(Subscription $Subscription, Request $request){
        $serviceResponse = $Subscription->pinVerify($request);
        return response()->json($serviceResponse, 200); 
    }
}

结果是我得到错误Class does not exist.,我不确定自己在哪里出错。有人可以指导我如何解决此问题吗?

错误

ReflectionException
Class App\Services\SubscriptionService does not exist
Previous exceptions
syntax error, unexpected ''pincode'' (T_CONSTANT_ENCAPSED_STRING)

Composer.json

"autoload": {
        "classmap": [
            "database/seeds",
            "database/factories"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },

mutable default argument problem

3 个答案:

答案 0 :(得分:1)

一切似乎都还好。尝试输入命令

composer dump-autoload

答案 1 :(得分:1)

在给定的行之后有多余的空格或其他内容。 我已经检查了您的代码,并在行'userID' => $request->user_id,​和您的语法错误,意外的“ pincode”(T_CONSTANT_ENCAPSED_STRING)错误消失之后按了退格

答案 2 :(得分:0)

syntax error, unexpected ''pincode'' (T_CONSTANT_ENCAPSED_STRING)意味着SubscriptionService类的文件中存在解析问题(多余的字符或缺少的字符或类似的东西)。因此,该文件不会被解析,并且该类不可用。异常错误跟踪很清楚。找到问题并解决。您的问题将得到解决。