pozitim/auth-client

There is no license information available for the latest version (1.1.2) of this package.

1.1.2 2017-08-18 08:10 UTC

This package is not auto-updated.

Last update: 2024-04-17 16:48:40 UTC


README

composer.json dosyasındaki require bilgisine aşağıdaki satır eklenebilir:

"pozitim/auth-client": "1.1.0"

Kullanım

Turkcell oturum anahtarının elde edilmesi için SessionClientImpl ve SessionCacheClientImpl isimli sınıflar kullanılmalıdır.

Memcache desteği olmadan SessionClientImpl aşağıdaki şekilde kullanılabilir:

$logger = new Logger();
$loggerListener = new \Pozitim\AuthClient\Turkcell\PsrLoggerListenerImpl($logger);
$sessionClient = new \Pozitim\AuthClient\Turkcell\SessionClientImpl();
$sessionClient->setApiEndpoint('http://auth.domain.com/api');
$sessionClient->setTurkcellEndpoint(''); // API dökümanına göz atılabilir.
$sessionClient->setServiceVariantId(123456);
$sessionClient->setSpId(1234);
$sessionClient->setPassword(12345678);
$sessionClient->setListener($loggerListener);
$sessionId = $sessionClient->getSessionId();

Eğer uygulamada sürekli auth projesine gidilmesi performans sorunu yaratacaksa SessionCacheClientImpl sınıfı kullanılabilir. Bu sınıf SessionClientImpl ve memcached objeleri kullanılarak üretilebilir.

$memcached = new Memcached();
$sessionCacheClient = new \Pozitim\AuthClient\Turkcell\SessionCacheClientImpl($sessionClient, $memcached);
$sessionId = $sessionCacheClient->getSessionId();

Alınan oturum anahtarı ilgili yerlerde kullanıldığında eğer Turkcell tarafından oturum anahtarı geçersiz hatası alınırsa uygulama yaşam döngüsünde yardımcı sınıf kullanılarak oturum anahtarı aşağıdaki gibi resetlenmeli ve tekrar sessionID istenmelidir:

<?php
$sessionClient->reset();
$sessionId = $sessionClient->getSessionId();