{"id":11079,"date":"2025-01-30T22:45:11","date_gmt":"2025-01-30T19:45:11","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/"},"modified":"2025-01-30T22:45:11","modified_gmt":"2025-01-30T19:45:11","slug":"nestjs-ile-canli-yayin-apisi-olusturma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/","title":{"rendered":"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma"},"content":{"rendered":"<p><body><\/p>\n<p>NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma<\/p>\n<p>Merhaba!  Bu makalede, NestJS framework&#8217;\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API&#8217;si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m.  Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS&#8217;in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz.  \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra,  \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip,  her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.<\/p>\n<h2>Projenin Kurulumu<\/h2>\n<p>\u0130lk olarak, bir NestJS projesi olu\u015fturmam\u0131z gerekiyor.  Bunun i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">\nnpm install -g @nestjs\/cli\nnest new live-streaming-api\n<\/code><\/pre>\n<p>Proje olu\u015fturulduktan sonra, gerekli paketleri kurmam\u0131z gerekiyor.  Bu paketler aras\u0131nda, canl\u0131 yay\u0131n i\u015flemlerini y\u00f6netmek i\u00e7in kullanaca\u011f\u0131m\u0131z paketler de bulunmaktad\u0131r.  \u00d6rne\u011fin,  RTMP sunucusu olarak  node-media-server  kullanabiliriz. Bu paketin kurulumu i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">\ncd live-streaming-api\nnpm install node-media-server\n<\/code><\/pre>\n<p>Bu ad\u0131mdan sonra,  API&#8217;mizin temel yap\u0131s\u0131n\u0131 olu\u015fturmaya ba\u015flayabiliriz.  Bu a\u015famada,  canl\u0131 yay\u0131n ak\u0131\u015flar\u0131n\u0131 y\u00f6netmek i\u00e7in gerekli olan  Stream  modelimizi ve  StreamController  s\u0131n\u0131f\u0131m\u0131z\u0131 olu\u015fturaca\u011f\u0131z.  Bu s\u0131n\u0131flar,  API&#8217;mizin kullan\u0131c\u0131larla etkile\u015fim kurmas\u0131n\u0131 ve  yay\u0131nlar\u0131 y\u00f6netmesini sa\u011flayacakt\u0131r.<\/p>\n<h2>Stream Modeli ve Controller<\/h2>\n<p>\u015eimdi, canl\u0131 yay\u0131n ak\u0131\u015flar\u0131n\u0131 temsil eden bir model ve  bu ak\u0131\u015flar\u0131 y\u00f6netecek bir controller olu\u015ftural\u0131m.  NestJS&#8217;in sa\u011flad\u0131\u011f\u0131 g\u00fc\u00e7l\u00fc dekorat\u00f6rler sayesinde bunu olduk\u00e7a kolay bir \u015fekilde yapabiliriz.<\/p>\n<pre><code class=\"language-typescript\">\n\/\/ stream.entity.ts\nimport { Entity, PrimaryGeneratedColumn, Column } from 'typeorm';\n\n@Entity()\nexport class Stream {\n  @PrimaryGeneratedColumn()\n  id: number;\n\n  @Column()\n  streamKey: string;\n\n  @Column()\n  streamUrl: string;\n}\n<\/code><\/pre>\n<pre><code class=\"language-typescript\">\n\/\/ stream.controller.ts\nimport { Controller, Post, Body } from '@nestjs\/common';\nimport { StreamService } from '.\/stream.service';\nimport { Stream } from '.\/stream.entity';\n\n@Controller('stream')\nexport class StreamController {\n  constructor(private readonly streamService: StreamService) {}\n\n  @Post()\n  async create(@Body() streamData: Stream): Promise&lt;Stream> {\n    return this.streamService.create(streamData);\n  }\n}\n<\/code><\/pre>\n<p>Bu kod par\u00e7alar\u0131, basit bir canl\u0131 yay\u0131n ak\u0131\u015f\u0131 olu\u015fturma i\u015flemini g\u00f6stermektedir.  Daha geli\u015fmi\u015f \u00f6zellikler eklemek i\u00e7in, bu kodlar\u0131 geni\u015fletebilirsiniz.  \u00d6rne\u011fin, kullan\u0131c\u0131 yetkilendirme,  yay\u0131nlar\u0131n izlenme say\u0131s\u0131n\u0131 takip etme gibi \u00f6zellikler ekleyebilirsiniz.  Daha fazla bilgi i\u00e7in, <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> adresini ziyaret edebilirsiniz.<\/p>\n<h2>RTMP Sunucusu Entegrasyonu<\/h2>\n<p> node-media-server paketini kullanarak  RTMP sunucunuzu entegre edebilirsiniz.  Bu sunucu,  canl\u0131 yay\u0131n ak\u0131\u015flar\u0131n\u0131 alacak ve  bunlar\u0131  kullan\u0131c\u0131lara iletecektir.  Konfig\u00fcrasyon dosyas\u0131n\u0131 d\u00fczenleyerek sunucu ayarlar\u0131n\u0131z\u0131 yapabilirsiniz.  Daha sonra,  API&#8217;niz bu sunucu ile etkile\u015fim kurarak  yay\u0131nlar\u0131 y\u00f6netecektir.  Bu s\u00fcre\u00e7te, g\u00fcvenlik \u00f6nlemlerine dikkat etmek \u00f6nemlidir.  Yay\u0131nlar\u0131n g\u00fcvenli bir \u015fekilde iletilmesi i\u00e7in gerekli \u00f6nlemleri almal\u0131s\u0131n\u0131z.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Bu makalede, NestJS kullanarak basit bir canl\u0131 yay\u0131n API&#8217;si olu\u015fturmay\u0131 \u00f6\u011frendik.  Bu API&#8217;yi geni\u015fleterek daha geli\u015fmi\u015f \u00f6zellikler ekleyebilirsiniz.  Unutmay\u0131n ki, g\u00fcvenlik, \u00f6l\u00e7eklenebilirlik ve performans,  canl\u0131 yay\u0131n sistemlerinde \u00e7ok \u00f6nemlidir.  Bu konular\u0131 g\u00f6z \u00f6n\u00fcnde bulundurarak projenizi geli\u015ftirin.  Daha fazla bilgi i\u00e7in,  NestJS ve  node-media-server  belgelerini inceleyebilirsiniz. Ba\u015fka sorular\u0131n\u0131z varsa,  yorumlar b\u00f6l\u00fcm\u00fcnden bana ula\u015fabilirsiniz.<\/p>\n<p>Faydal\u0131 bulmu\u015f olabilece\u011finiz baz\u0131 kaynaklar:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.nestjs.com\/\">NestJS Resmi Dok\u00fcmanlar\u0131<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/node-media\/node-media-server\">node-media-server GitHub Repo<\/a><\/li>\n<\/ul>\n<p>#Etiketler: NestJS, Canl\u0131 Yay\u0131n, API, Live Streaming, Node.js, Tutorial, \u00d6\u011fretici,  RTMP,  node-media-server, fatihsoysal<\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma Merhaba! Bu makalede, NestJS framework&#8217;\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n&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-11079","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>NestJS ile Canl\u0131 Yay\u0131n API&#039;si Olu\u015fturma<\/title>\n<meta name=\"description\" content=\"Merhaba! Bu makalede, NestJS framework&#039;\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API&#039;si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS&#039;in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.\" \/>\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\/nestjs-ile-canli-yayin-apisi-olusturma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"NestJS ile Canl\u0131 Yay\u0131n API&#039;si Olu\u015fturma\" \/>\n<meta property=\"og:description\" content=\"Merhaba! Bu makalede, NestJS framework&#039;\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API&#039;si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS&#039;in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-30T19: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=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma\",\"datePublished\":\"2025-01-30T19:45:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\"},\"wordCount\":489,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\",\"name\":\"NestJS ile Canl\u0131 Yay\u0131n API'si Olu\u015fturma\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-01-30T19:45:11+00:00\",\"description\":\"Merhaba! Bu makalede, NestJS framework'\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API'si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS'in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma\"}]},{\"@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":"NestJS ile Canl\u0131 Yay\u0131n API'si Olu\u015fturma","description":"Merhaba! Bu makalede, NestJS framework'\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API'si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS'in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.","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\/nestjs-ile-canli-yayin-apisi-olusturma\/","og_locale":"tr_TR","og_type":"article","og_title":"NestJS ile Canl\u0131 Yay\u0131n API'si Olu\u015fturma","og_description":"Merhaba! Bu makalede, NestJS framework'\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API'si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS'in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.","og_url":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-01-30T19:45:11+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma","datePublished":"2025-01-30T19:45:11+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/"},"wordCount":489,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/","url":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/","name":"NestJS ile Canl\u0131 Yay\u0131n API'si Olu\u015fturma","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-01-30T19:45:11+00:00","description":"Merhaba! Bu makalede, NestJS framework'\u00fcn\u00fc kullanarak g\u00fc\u00e7l\u00fc ve \u00f6l\u00e7eklenebilir bir canl\u0131 yay\u0131n API'si nas\u0131l olu\u015fturabilece\u011finizi detayl\u0131 olarak anlataca\u011f\u0131m. Canl\u0131 yay\u0131n sistemleri karma\u015f\u0131k olabilir, ancak NestJS'in sa\u011flad\u0131\u011f\u0131 mimari sayesinde bu s\u00fcreci olduk\u00e7a kolayla\u015ft\u0131rabiliriz. \u00d6ncelikle, projemizi kurarak ba\u015flayal\u0131m. Daha sonra, \u00f6nemli bile\u015fenleri ad\u0131m ad\u0131m in\u015fa edip, her bir ad\u0131mda a\u00e7\u0131klamalarda bulunaca\u011f\u0131m.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/nestjs-ile-canli-yayin-apisi-olusturma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"NestJS ile Canl\u0131 Yay\u0131n API&#8217;si Olu\u015fturma"}]},{"@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\/11079","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=11079"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/11079\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=11079"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=11079"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=11079"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}