Как правильно загрузить учетные данные oauth из хранилища

#php #laravel #google-api #google-api-php-client #laravel-8

#php #laravel #google-api #google-api-php-client #laravel-8

Вопрос:

Я пытаюсь использовать laravel и Google Analytics, чтобы иметь возможность создавать отчет, проблема, с которой я сталкиваюсь, заключается в следующем

{ «ошибка»: { «код»: 400, «сообщение»: «ИДЕНТИФИКАТОР КЛИЕНТА: {my_client_id} не найден.», «ошибки»: [ { «сообщение»: «ИДЕНТИФИКАТОР КЛИЕНТА: {my_client_id} не найден.», «домен»: «глобальный», «причина»:»BadRequest» } ], «status»: «INVALID_ARGUMENT» } }

Вот мой код

     <?php

    namespace AppHttpControllers;

    use CarbonCarbon;
    use Google_Service_AnalyticsReporting_User;
    use IlluminateSupportFacadesHttp;

    // Google API
    use GoogleClient;
    use Google_Service_AnalyticsReporting_SearchUserActivityRequest;
    use Google_Service_AnalyticsReporting_ReportRequest;
    use Google_Service_AnalyticsReporting_Metric;
    use Google_Service_AnalyticsReporting_GetReportsRequest;
    use Google_Service_AnalyticsReporting_DateRange;
    use Google_Service_AnalyticsReporting;

    class GAActivityController extends Controller
    {
        public function index()
        {
            $startDate = Carbon::now()->firstOfMonth();

            $client = new Client();
            $client->setAuthConfig(storage_path('test-api.json'));
            $client->addScope(Google_Service_Analytics::ANALYTICS_READONLY);

            $analytics = new Google_Service_AnalyticsReporting($client);

            $user = new Google_Service_AnalyticsReporting_User();
            $user->setUserId(env('CLIENT_ID')); //Client ID

            $userActivityRequest = new Google_Service_AnalyticsReporting_SearchUserActivityRequest();
            $userActivityRequest->setViewId(env('ANALYTICS_VIEW_ID'));
            $userActivityRequest->setUser($user);

            $param = [

            ];

            dd($analytics->userActivity->search($userActivityRequest, $param));
        }
    }
  

Комментарии:

1. используйте config вместо env('CLIENT_ID')

2. @KamleshPaul — подойдет, но как это решит мою проблему? Потому что, даже если бы я это сделал, разве я не получил бы ту же ошибку?

3. dd(env('CLIENT_ID') ); попробуйте это и проверьте

4. вы только что спрашивали о activityTime, что с этим произошло?

5. Если есть установщик, то в этом должен быть getter попробуйте посмотреть, установлен ли ваш user_id использовать, $user->getUserId()