Ошибка Dropbox при запросе токена доступа

Я работаю над PHP-приложением, в котором мне нужно интегрировать Dropbox. Я делаю это в файле file1.php. Ниже приведен код:

require_once ("../dropbox-sdk/Dropbox/autoload.php"); use \Dropbox as dbx; $appInfo = dbx\AppInfo::loadFromJsonFile("../dropbox-config.json"); $csrfTokenStore = new dbx\ArrayEntryStore($_SESSION, 'dropbox-auth-csrf-token'); $webAuth = new dbx\WebAuth($appInfo, "MyApp", "https://example.net/app2/OAuthRedirectURI.php", $csrfTokenStore); $authorizeUrl = $webAuth->start('https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']."|".session_id()); 

Поскольку перенаправление uri не может быть динамическим, я указал перенаправление uri на https://example.net/app2/RedirectURI.php .

В $webAuth->start() я отправил полный путь file1.php и идентификатор сеанса. Это связано с тем, что мне нужно перенаправить файл file.php из файла RedirectURI.php.

Ниже приведен код RedirectURI.php:

 $stateArray = explode("|", $_GET['state']); session_id($stateArray[2]); session_start(); $_GET['state'] = $stateArray[0]; $_SESSION['DBX_AUTH_CODE_GET'] = $_GET; header("location:".$stateArray[1]); 

В RedirectURI.php я получаю код аутентификации и параметры, которые я отправил, разделенные символом pipe. После создания сеанса я помещал массив $ _GET в сеанс и перенаправлялся в файл file1.php.

В файле file1.php ниже приведен код для доступа к токену доступа:

 if(isset($_SESSION['DBX_AUTH_CODE_GET'])){ $x = $_SESSION['DBX_AUTH_CODE_GET']; list($accessToken, $userId, $urlState) = $webAuth->finish($x); echo "access token: " . $accessToken; } 

Но он показывает ошибку:

 PHP fatal error in line 242 of file /var/www/html/example/public_html/app2/dropbox-sdk/Dropbox/WebAuth.php. Uncaught exception 'Dropbox\WebAuthException_Csrf' with message 'Expected '6r9eW-MB82JxkJU9AE7u9g==', got 'KkgZk4491XEPhsn_14EObw=='.' in /var/www/html/example/public_html/app2/dropbox-sdk/Dropbox/WebAuth.php:242nStack trace:n#0 /var/www/html/example/public_html/app2/pm/file1.php(40): Dropbox\WebAuth->finish(Array)n#1 {main}n thrown 

Я понятия не имею, почему это происходит.