{"id":2931,"date":"2024-11-04T13:45:11","date_gmt":"2024-11-04T10:45:11","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/"},"modified":"2024-11-04T13:45:11","modified_gmt":"2024-11-04T10:45:11","slug":"lithede-jwt-orta-katmanini-entegre-etme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/","title":{"rendered":"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme"},"content":{"rendered":"<p>Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme<\/p>\n<p>Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.<\/p>\n<h2>JWT Orta Katman\u0131 Nedir?<\/h2>\n<p>JWT (JSON Web Token), bir kullan\u0131c\u0131y\u0131 kimliklendirmek ve yetkilendirmek i\u00e7in g\u00fcvenli bir standartt\u0131r. Bir JWT, \u00fc\u00e7 b\u00f6l\u00fcmden olu\u015fan bir JSON objesidir:<\/p>\n<ul>\n<li><b>Ba\u015fl\u0131k:<\/b> JWT t\u00fcr\u00fcn\u00fc ve kullan\u0131lan algoritmay\u0131 belirtir.<\/li>\n<li><b>Y\u00fck:<\/b> Kullan\u0131c\u0131 kimli\u011fi, rol ve di\u011fer ilgili verileri i\u00e7erir.<\/li>\n<li><b>\u0130mza:<\/b> Ba\u015fl\u0131k ve y\u00fck\u00fc do\u011frulamak i\u00e7in kullan\u0131lan dijital imza.<\/li>\n<\/ul>\n<p>JWT&#8217;ler, sunucu taraf\u0131 uygulamalarda oturum y\u00f6netimi, API g\u00fcvenli\u011fi ve kullan\u0131c\u0131 yetkilendirme gibi bir\u00e7ok senaryoda kullan\u0131labilir.<\/p>\n<h2>Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Kurma<\/h2>\n<p>Lithe&#8217;de JWT orta katman\u0131n\u0131 kullanmak i\u00e7in \u00f6ncelikle birka\u00e7 paket y\u00fcklememiz gerekiyor:<\/p>\n<p>&#8220;`bash<br \/>\ncomposer require firebase\/php-jwt<br \/>\ncomposer require league\/event<br \/>\n&#8220;`<\/p>\n<p>Bu paketler JWT&#8217;leri olu\u015fturmak, do\u011frulamak ve olaylar\u0131 y\u00f6netmek i\u00e7in gerekli fonksiyonlar\u0131 sa\u011flar.<\/p>\n<h3>Orta Katman S\u0131n\u0131f\u0131<\/h3>\n<p>\u015eimdi JWT orta katman s\u0131n\u0131f\u0131m\u0131z\u0131 olu\u015ftural\u0131m. Bu s\u0131n\u0131f, JWT tokenlerini olu\u015fturmak, do\u011frulamak ve kullan\u0131c\u0131n\u0131n rol bilgilerini almak gibi temel fonksiyonlar\u0131 i\u00e7erecektir.<\/p>\n<p>&#8220;`php<br \/>\n<?php\n\nnamespace App\\Middleware;\n\nuse Firebase\\JWT\\JWT;\nuse League\\Event\\Emitter;\n\nclass JWTMiddleware\n{\n    private $secretKey;\n    private $emitter;\n\n    public function __construct(string $secretKey, Emitter $emitter)\n    {\n        $this->secretKey = $secretKey;<br \/>\n        $this->emitter = $emitter;<br \/>\n    }<\/p>\n<p>    public function handle(callable $next)<br \/>\n    {<br \/>\n        return function ($request) use ($next) {<br \/>\n            $token = $this->getTokenFromRequest($request);<\/p>\n<p>            if (!$token) {<br \/>\n                $this->emitter->emit(&#8216;auth.failure&#8217;);<br \/>\n                return $next($request);<br \/>\n            }<\/p>\n<p>            try {<br \/>\n                $decoded = JWT::decode($token, $this->secretKey, [&#8216;HS256&#8217;]);<br \/>\n                $request->setAttribute(&#8216;user&#8217;, $decoded);<br \/>\n                $this->emitter->emit(&#8216;auth.success&#8217;, $decoded);<br \/>\n                return $next($request);<br \/>\n            } catch (\\Exception $e) {<br \/>\n                $this->emitter->emit(&#8216;auth.failure&#8217;, $e);<br \/>\n                return $next($request);<br \/>\n            }<br \/>\n        };<br \/>\n    }<\/p>\n<p>    private function getTokenFromRequest($request)<br \/>\n    {<br \/>\n        \/\/ Token\u0131 HTTP Header&#8217;dan veya Cookie&#8217;den al\u0131n<br \/>\n        $token = $request->getHeaderLine(&#8216;Authorization&#8217;);<br \/>\n        if (!$token) {<br \/>\n            $token = $request->getCookie(&#8216;jwt&#8217;);<br \/>\n        }<br \/>\n        return $token;<br \/>\n    }<br \/>\n}<br \/>\n&#8220;`<\/p>\n<h3>Orta Katman\u0131 Kaydetme<\/h3>\n<p>Orta katman\u0131 Lithe&#8217;nin yap\u0131land\u0131rma dosyas\u0131na kaydetmemiz gerekiyor. Bu i\u015flem, orta katman\u0131n her iste\u011fin i\u015flenmesi s\u0131ras\u0131nda otomatik olarak \u00e7a\u011fr\u0131lmas\u0131n\u0131 sa\u011flayacakt\u0131r.<\/p>\n<p>&#8220;`php<br \/>\n<?php\n\nuse App\\Middleware\\JWTMiddleware;\n\nreturn [\n    'middleware' => [<br \/>\n        &#8216;global&#8217; => [<br \/>\n            JWTMiddleware::class<br \/>\n        ]<br \/>\n    ],<br \/>\n    \/\/ &#8230; di\u011fer yap\u0131land\u0131rmalar &#8230;<br \/>\n];<br \/>\n&#8220;`<\/p>\n<h3>Olaylar\u0131 Y\u00f6netme<\/h3>\n<p>JWT orta katman\u0131, olaylar g\u00f6ndererek JWT tokeninin olu\u015fturulmas\u0131 veya do\u011frulanmas\u0131 s\u0131ras\u0131nda olu\u015fan farkl\u0131 durumlar\u0131 izlememizi sa\u011flar. Bu olaylar\u0131 kullanarak, \u00f6rne\u011fin kullan\u0131c\u0131y\u0131 oturum a\u00e7ma veya oturumdan \u00e7\u0131karma gibi i\u015flemleri ger\u00e7ekle\u015ftirebiliriz.<\/p>\n<p>&#8220;`php<br \/>\n<?php\n\nuse League\\Event\\Emitter;\n\n$emitter = new Emitter();\n\n$emitter->addListener(&#8216;auth.success&#8217;, function ($user) {<br \/>\n    \/\/ Kullan\u0131c\u0131 oturum a\u00e7\u0131ld\u0131<br \/>\n    \/\/ \u00d6rne\u011fin, kullan\u0131c\u0131 verilerini bir veritaban\u0131ndan y\u00fckleyebilirsiniz.<br \/>\n    \/\/ &#8230;<br \/>\n});<\/p>\n<p>$emitter->addListener(&#8216;auth.failure&#8217;, function ($error = null) {<br \/>\n    \/\/ Kimlik do\u011frulama ba\u015far\u0131s\u0131z oldu<br \/>\n    \/\/ \u00d6rne\u011fin, kullan\u0131c\u0131y\u0131 giri\u015f sayfas\u0131na y\u00f6nlendirebilirsiniz.<br \/>\n    \/\/ &#8230;<br \/>\n});<\/p>\n<p>\/\/ &#8230; di\u011fer kod &#8230;<br \/>\n&#8220;`<\/p>\n<h2>Kullan\u0131m \u00d6rne\u011fi<\/h2>\n<p>\u015eimdi, JWT orta katman\u0131n\u0131 kullanarak bir API yolunu koruyal\u0131m. Bu API yolunun sadece oturum a\u00e7m\u0131\u015f kullan\u0131c\u0131lar taraf\u0131ndan eri\u015filebilir olmas\u0131n\u0131 sa\u011flayaca\u011f\u0131z.<\/p>\n<p>&#8220;`php<br \/>\n<?php\n\nuse Lithe\\Route;\n\nRoute::get('\/protected', function () {\n    \/\/ Sadece oturum a\u00e7m\u0131\u015f kullan\u0131c\u0131lar buraya eri\u015febilir\n    $user = $this->request->getAttribute(&#8216;user&#8217;);<br \/>\n    \/\/ &#8230;<br \/>\n})<br \/>\n->middleware(JWTMiddleware::class);<br \/>\n&#8220;`<\/p>\n<p>Bu kod, `\/protected` yolunu JWTMiddleware ile korur. JWT tokeni do\u011fru bir \u015fekilde do\u011frulan\u0131rsa, `$user` de\u011fi\u015fkeni do\u011frulanm\u0131\u015f kullan\u0131c\u0131 bilgilerini i\u00e7erecektir.<\/p>\n<h2>\u00d6zet<\/h2>\n<p>Bu makale, Lithe&#8217;de JWT orta katman\u0131n\u0131 entegre etme ad\u0131mlar\u0131n\u0131 g\u00f6sterdi. JWT orta katman\u0131 kullanarak, Lithe uygulamalar\u0131n\u0131zda g\u00fcvenli oturum y\u00f6netimi ve kullan\u0131c\u0131 yetkilendirme ger\u00e7ekle\u015ftirebilirsiniz.<\/p>\n<p>Daha fazla bilgi i\u00e7in, a\u015fa\u011f\u0131daki kaynaklar\u0131 inceleyebilirsiniz:<\/p>\n<ul>\n<li><a href=\"https:\/\/dev.to\/lithephp\/integrating-the-jwt-middleware-in-lithe-461\">Lithe Resmi Dok\u00fcmantasyonu<\/a><\/li>\n<li><a href=\"https:\/\/jwt.io\/\">JWT.io<\/a><\/li>\n<li><a href=\"https:\/\/fatihsoysal.com\/\">Fatih Soysal Blogu<\/a><\/li>\n<\/ul>\n<p>Bu makalenin yard\u0131mc\u0131 olmas\u0131n\u0131 umuyorum. \u0130yi kodlamalar!<\/p>\n<p>#Etiketler<br \/>\nJWT, Lithe, Orta Katman, Kimlik Do\u011frulama, Yetkilendirme, G\u00fcvenlik, API <\/p>\n","protected":false},"excerpt":{"rendered":"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-2931","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Lithe&#039;de JWT Orta Katman\u0131n\u0131 Entegre Etme<\/title>\n<meta name=\"description\" content=\"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Lithe&#039;de JWT Orta Katman\u0131n\u0131 Entegre Etme\" \/>\n<meta property=\"og:description\" content=\"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-04T10:45:11+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme\",\"datePublished\":\"2024-11-04T10:45:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\"},\"wordCount\":228,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#respond\"]}],\"copyrightYear\":\"2024\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\",\"name\":\"Lithe'de JWT Orta Katman\u0131n\u0131 Entegre Etme\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2024-11-04T10:45:11+00:00\",\"description\":\"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Lithe'de JWT Orta Katman\u0131n\u0131 Entegre Etme","description":"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/","og_locale":"tr_TR","og_type":"article","og_title":"Lithe'de JWT Orta Katman\u0131n\u0131 Entegre Etme","og_description":"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.","og_url":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2024-11-04T10:45:11+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"1 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme","datePublished":"2024-11-04T10:45:11+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/"},"wordCount":228,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#respond"]}],"copyrightYear":"2024","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/","url":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/","name":"Lithe'de JWT Orta Katman\u0131n\u0131 Entegre Etme","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2024-11-04T10:45:11+00:00","description":"Lithe, PHP i\u00e7in minimalist ve esnek bir \u00e7er\u00e7evedir. Bu makalede Lithe projenize JWT (JSON Web Token) orta katman\u0131n\u0131 nas\u0131l entegre edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterece\u011fim.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/lithede-jwt-orta-katmanini-entegre-etme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Lithe&#8217;de JWT Orta Katman\u0131n\u0131 Entegre Etme"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/2931","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=2931"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/2931\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=2931"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=2931"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=2931"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}