Search code examples
phpherokumampyoutube-data-api

YouTube Data API (v3, PHP) error on Heroku?


I am writing a PHP app that uses the YouTube Data API v3 (link to Google-provided PHP client). I'm testing it with MAMP and publishing with Heroku. When I run the app with MAMP, it works fine, but when I deploy to Heroku, I get the following error message:

PHP Fatal error: Class 'Google_Http_CacheParser' not found in /app/Google/IO/Abstract.php on line 165

The only difference I could think of was different PHP versions (MAMP 5.5.10, Heroku 5.6.10). But the problem was not solved after restricting this with composer.json. Besides, Google claims that the client should work with any version 5.2.1+.

I am importing everything with the Google-provided autoload.php.

The code for the app is published on GitHub. Only update.php uses the API.


Solution

  • I figured out the issue.

    My .gitignore was ignoring all files that began with "cache." This was added a long time ago, before I was using this version of the API.

    Because of this, CacheParser.php (one of the files in Google's PHP client) was never being sent to the server.