我正在使用来自https://developers.google.com/drive/delegation的上述代码来访问特定的 Google Drive 帐户:
function buildService($userEmail) {
global $DRIVE_SCOPE, $SERVICE_ACCOUNT_EMAIL, $SERVICE_ACCOUNT_PKCS12_FILE_PATH;
$key = file_get_contents($SERVICE_ACCOUNT_PKCS12_FILE_PATH);
$auth = new Google_AssertionCredentials(
$SERVICE_ACCOUNT_EMAIL,
array($DRIVE_SCOPE),
$key);
$auth->sub = $userEmail;
$client = new Google_Client();
$client->setUseObjects(true);
$client->setAssertionCredentials($auth);
return new Google_DriveService($client);
}
它工作正常,但创建对象的速度非常慢。我想将服务存储在会话中,以避免在对服务器的每个请求中重新创建它。序列化是不可能的。任何想法?