بهترین سایت برای توسعه دهندگان وب

دروس HTML5

شروع HTML مقدمه HTML ویرایشگران HTML مثالهای اساسی HTML المان های HTML ویژگی های HTML عناوین HTML بندهای HTML سبک های HTML قالب بندی HTML نقل قول های HTML نظرات HTML رنگهای HTML HTML و CSS پیوندهای HTML تصاویر HTML جداول HTML لیست های HTML بلوک های HTML کلاس های HTML شناسه های HTML فریم های HTML HTML و JavaScript مسیرهای پرونده HTML HTML قسمت هدینگ چیدمان های HTML HTML پاسخگو کد رایانه HTML موجودیت HTML نمادهای HTML رمزگذاری HTML رمزگذاری URL HTML HTML و XHTML

HTML فرم ها

فرم های HTML المان های فرم HTML انواع ورودی HTML صفات ورودی HTML

HTML5

مقدمه HTML5 پشتیبانی HTML5 المان های جدید HTML5 المان های معنایی HTML5 مهاجرت از HTML4 راهنمای سبک HTML5

HTML گرافیک

HTML Canvas HTML SVG

HTML رسانه

چندرسانه ای HTML ویدیوی HTML صوت HTML افزونه های HTML یوتیوب HTML

HTML API

مکان جغرافیایی HTML کشیدن / رها کردن HTML HTML ذخیره وب HTML کارهای وب HTML و SSE

HTML مثال

مثالهای HTML آزمون ها HTML تمرینات HTML گواهی HTML خلاصه HTML قابلیت دسترسی به HTML

HTML منابع

لیست برچسب های HTML صفات HTML صفات جهانی HTML رویدادهای HTML رنگهای HTML کانواس HTML صوتی / تصویری HTML نسخه معتبر HTML مجموعه نویسه های HTML رمزگذاری URL HTML رمزگذاری زبان HTML پیام های HTTP روشهای HTTP مبدل PX به EM میانبرهای صفحه کلید

HTML5 درسهایی برای مبتدیان

سرورهای ارسال شده HTML5


رویدادهای ارسال شده توسط سرور برای چیست؟ (Server-Sent Events - SSE)

Server Sent Events (SSE) به یک صفحه وب امکان دریافت به روزرسانی از سرور را می دهد.


رویدادهای ارسال شده توسط سرور - پیام رسانی یک طرفه

رویداد ارسال شده توسط سرور زمانی است که یک صفحه وب به طور خودکار از سرور بروزرسانی می کند.

این کار قبلاً نیز امکان پذیر بود ، اما اگر صفحه به روزرسانی در دسترس باشد ، باید در صفحه وب ارسال شود. با رویدادهای ارسال شده توسط سرور ، به روزرسانی ها به صورت خودکار انجام می شوند.

مثالها: به روزرسانی های فیس بوک / توییتر ، به روزرسانی قیمت سهام ، خبرهای خبری ، نتایج ورزشی و غیره


پشتیبانی مرورگر

اعداد موجود در جدول اولین نسخه مرورگر را مشخص می کنند که به طور کامل از رویدادهای ارسال شده توسط سرور پشتیبانی می کند..

API Chrome Edge Firefox Safari Opera
SSE 6.0 79.0 6.0 5.0 11.5

API Chrome Edge Firefox Safari Opera
SSE 6.0 79.0 6.0 5.0 11.5

اعلان های رویداد ارسال شده توسط سرور را دریافت کنید

شی EventSource برای دریافت اعلان های رویداد ارسال شده توسط سرور استفاده می شود:

مثال

var source = new EventSource("demo_sse.php");
source.onmessage = function(event) {
  document.getElementById("result").innerHTML += event.data + "<br>";
};
خودتان آزمایش کنید »

توضیح مثال :

  • یک شی EventSource جدید ایجاد کنید و URL صفحه ارسال کننده به روزرسانی ها را مشخص کنید (در این مثال "demo_sse.php")
  • با هر بار به روزرسانی ، رویداد onmessage رخ می دهد
  • هنگامی که یک رویداد onmessage رخ می دهد ، داده های دریافت شده را در عنصر با id="result" قرار دهید

پشتیبانی رویدادهای ارسال شده توسط سرور را بررسی کنید

در مثال بالا ، چند خط کد اضافی برای بررسی پشتیبانی مرورگر برای رویدادهای ارسال شده توسط سرور وجود دارد:

if(typeof(EventSource) !== "undefined") {
  // آره! پشتیبانی از رویدادهای ارسال شده توسط سرور!
 // چند کد .....
} else {
  // متأسفانه ، ارسال رویدادها به سرور پشتیبانی نمی شود.
}

مثال کد سمت سرور

برای کار کردن مثال بالا ، شما به سروری نیاز دارید که بتواند به روزرسانی های داده را ارسال کند (مانند PHP یا ASP).

نحو جریان رویداد سمت سرور ساده است. عنوان "Content-Type" را روی "text/event-stream" تنظیم کنید. اکنون می توانید ارسال جریان های رویداد را شروع کنید.

کد در PHP (demo_sse.php):

<?php
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');

$time = date('r');
echo "data: The server time is: {$time}\n\n";
flush();
?>

کد ASP (VB) (demo_sse.asp):

<%
Response.ContentType = "text/event-stream"
Response.Expires = -1
Response.Write("data: The server time is: " & now())
Response.Flush()
%>

توضیحات کد:

  • عنوان "Content-Type" را روی "text/event-stream" تنظیم کنید
  • مشخص کنید که صفحه نباید حافظه پنهان شود (not cache)
  • داده ها را برای ارسال خارج کنید (همیشه با "data" شروع کنید) :
  • داده های خروجی را به صفحه وب برگردانید

شی EventSource

در مثال های بالا ما از رویداد onmessage برای دریافت پیام استفاده کردیم. اما سایر رویدادها نیز در دسترس هستند:

اتفاقات توضیح
onopen وقتی اتصال به سرور باز است
onmessage وقتی پیام دریافت شد
onerror وقتی خطا رخ داد





این سایت برای آموزش ، آزمایش و یادگیری بهینه شده است. نمونه ها را می توان برای بهبود ساده کرد خواندن و درک اساسی. آموزشها ، پیوندها و مثالها مرتباً تجدید نظر می شوند تا از آنها جلوگیری شود خطاها ، اما ما نمی توانیم صحت و عملکرد کامل همه مطالب را تضمین کنیم. با استفاده از این سایت ، شما موافقت می کنید که مطالعه کرده اید و پذیرفته ایدمقررات استفاده , کوکی و سیاست های حفظ حریم خصوصی. کپی رایت 1999-2020 حق چاپ و .. محفوظ توسط احمد فرجی
سایت توسط چارچوب farsiw3.ir طراحی شده است.

Farsiw3.ir