TGViewer
DotNet | دات نت DotNet | دات نت @dotnetcode · 1.21K subscribers
Post #3075 991
DotNet | دات نت قسمت شماره ۱: خداحافظی با کدهای تکراری در C# 14! سلام به همه برنامه‌نویس‌های خفن دات‌نتی! 👋 خبرهای داغ داریم! 🔥 .NET 10 و C# 14 با یه سری ویژگی‌های فوق‌العاده از راه رسیدن که کدنویسی رو خیلی شیرین‌تر می‌کنه. بیاید چندتا از باحال‌ترین‌هاش رو با هم ببینیم:…
قسمت ۳ : پشتیبانی داخلی از (SSE) Server-Sent Events

اغلب وقتی می‌خوایم دیتای زنده از سرور به کلاینت بفرستیم (مثل نوتیفیکیشن، قیمت لحظه‌ای ارز یا وضعیت یه پردازش طولانی)، اولین فکرمون میره سراغ WebSockets.

اما WebSockets یه پروتکل دوطرفه و پیچیده‌ست. خیلی وقت‌ها ما فقط نیاز داریم سرور یک‌طرفه به کلاینت دیتا «پوش» کنه.
اینجا SSE (Server-Sent Events) وارد می‌شه. SSE بر پایه HTTP کار می‌کنه، سبکه و پیاده‌سازیش خیلی ساده‌تره.

در ASP.NET Core 10، پشتیبانی از SSE داخلی شده:
مثال (سمت سرور - C#):

app.MapGet("/live-clock", async (HttpContext context, CancellationToken ct) =>
{
// به مرورگر می‌گیم که این یه استریم SSE هست
await context.Response.WriteSseHeadersAsync(ct);

// یه حلقه که هر ثانیه، زمان سرور رو برای کلاینت می‌فرسته
while (!ct.IsCancellationRequested)
DRAFT:
{
// یه "ایونت" به اسم 'timeUpdate' می‌فرستیم
await context.Response.WriteSseEventAsync(
"timeUpdate", // اسم ایونت
$"ساعت سرور: {DateTime.Now:T}", // دیتا
ct);

await Task.Delay(1000, ct); // ۱ ثانیه صبر کن
}
});

مثال (سمت کلاینت - JavaScript):
// به همین سادگی به سرور وصل می‌شیم
const eventSource = new EventSource("/live-clock");

// به ایونت 'timeUpdate' گوش می‌دیم
eventSource.addEventListener("timeUpdate", (event) => {
console.log(event.data);
// خروجی: "ساعت سرور: 14:30:01"
// خروجی: "ساعت سرور: 14:30:02"
// ...
});


🎺برای یادگیری بیشتر و دریافت مطالب مفید در زمینه .NET و برنامه‌نویسی، به کانال ما بپیوندید!

📚💻 @dotnetcode 🖥👨‍💻
  • ❤ 7
  • 🔥 4
  • 👏 3
More from @dotnetcode
  1. Sep 16, 2026ورک‌شاپ «AI Agents in C# (MAF)» در این ورک‌شاپ به بررسی امکانات جدید برنامه‌نویسی با کتابخ…
  2. Jul 10, 2026#مهندس_فکر_کن قسمت:4️⃣ 🎯مصاحبه‌کننده: ءCache Stampede چیست؟ فرض کن یک کلید در Cache داری:…
  3. Jun 12, 20261. Indexes منابع پیشنهادی این چالش که برای من اینها جذاب بوده و هست. A. Designing Data-Int…
  4. Jun 9, 2026آینده هوش مصنوعی و مهندسی کامپیوتر هوش مصنوعی مهندسی را نابود نمی‌کند، اما در سکوت در حال…
  5. Jun 4, 2026تحولی بزرگ در دنیای سی‌شارپ: ویژگی هیجان‌انگیز Union Types در C# 15! بالاخره یکی از جذاب‌ت…
  6. Feb 8, 2026👩‍💻 پستگرس رو ۲.۵ برابر سریع‌تر کن! تصور کن مغز متفکر دیتابیست (Parser) رو بدی دست هوش م…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →