Hybrid mobil uygulamalarda ve %100 api üzerinden, doğrudan backende bağlantısı olmayan web uygulamalarında, kullanıcı bilgilerini tutmak için "HTML5 Web Storage / localStorage" kullanılmaktadır. React native ve ionic ile mobil uygulama geliştirenler de normalde php'de sessionda tuttuğumuz ama aşırı güvenlik gerektirmeyen verileri local storage'da tutarlar.
Sizin sorunuza gelecek olursak; mobil uygulama yada web uygulamasından bir şekilde konumu aldığınızı varsayarsak anlatıyorum; Bu konumu her istekte tekrar çekmemek için local storage'a atarsınız. Orada varsa onu kullanır, yoksa çekip oraya atarsınız. Cache mantığı gibi.
Benim Ionic ile geliştirdiğim bir mobil uygulamadan api ve localstorage örneği verecek olursam; Kullanıcının yakınındaki birşeyleri listeleyen bir uygulama bu. Kullanıcı uygulamayı açtığı anda konumunu çekiyorum, konum alınamazsa yakınımdakileri getir dediğinde harita açıp ordan seçmesini istiyorum. Her iki şekilde de tekrar tekrar konum seçmemek için, web storage'da bu longitude ve latitude bilgilerini tutuyorum.
Api olayına gelecek olursak, öncelikle kullanıcı giriş yapmamışsa, kullanıcı girişine henüz gerek yoksa, klasik bir jwt ile kategoriler vb. verileri çekebilirsiniz. Örneğin: sahibinden soldaki kategoriler için basit bir token(manuel yazılmış tek bir tokenda olabilir) kullanılabilir. Bunu passport ile yapmak isterseniz "Client Credentials Grant Tokens" kullanabilirsiniz. Dökümanlarda nasıl kullanacağınız, rotalarınızı nasıl koruyacağınız açıkça yazılmış.
https://laravel.com/docs/5.6/passport#client-credentials-grant-tokens
Api ile ikinci senaryo, kullanıcı girişi yapılan senaryoya değinecek olursak. Burada passport'un nimetleri oldukça işimize yarıyor. Kullanıcı adı ve şifre ile token üreteceğiniz token tipi "Password Grant Token"dır. Bu tokenı oluşturup, kullandığınızda aşağıdaki şekilde sanki kullanıcı klasik bir şekilde oturum açmışcasına Auth Class'ını kullanabilirsiniz. Ben dönen token'ı yine localStorage'da tutuyorum. Güncel bilgiler bu kullanımı işaret ediyor.
Auth::user()->name;
https://laravel.com/docs/5.6/passport#password-grant-tokens
Bir üçüncü senaryoda, 3. parti sitelerin facebook ve twitter gibi sitelerden yetki istediği şekilde sitenize OAuth2 yapısını ekleme gereksinimi duyduğumuz senaryodur. Bunun için incelemeniz gereken başlık "Issuing Access Tokens"dır. Detayları için dökümanı inceleyebilirsiniz.
https://laravel.com/docs/5.6/passport#issuing-access-tokens
Laravel passport ile alakalı mantık çoğu zaman karıştırılıyor. İhtiyacı olan diğer arkadaşlarında faydalanması için, örneklerle uzunca açıklamaya çalıştım.