PDA

View Full Version : وب سرویس زمان



misagh1359
شنبه 07 مهر 1386, 14:35 عصر
سلام دوستان
من دارم یه وب سایت می نویسم که داخل اون حتما باید ساعت رو بر حسب گرینویچ نمایش بده ، کسی هست بتونه به من کمک کنه و راه حلی رو پیشنهاد بده
با تشکر از همه

mp2009
شنبه 07 مهر 1386, 16:16 عصر
والا مشکل منم همینه
از مدیران و دوستان خواهشمندم یکه کمک کنه

Behrouz_Rad
شنبه 07 مهر 1386, 18:08 عصر
برای Sync کردن زمان باید از NTP استفاده کنی.
ویندوز برای Sync کردن زمان از دو سرور time.windows.com و time.nist.gov استفاده می کنه.
میتونی بر روی زمان در Taskbar دو بار کلیک کنی و در سربرگ Internet Time این دو گزینه رو ببینی.
اینها دو تا از NTP هایی هستند که میتونی از اونها استفاده کنی.
time.windows.com از UDP و پورت 123 استفاده میکنه. میتونی با استفاده از کلاس Socket به این NTP متصل بشی و Stream برگشتی که شامل زمان و تاریخ گرینویچ هست رو دریافت کنی.
همچنین میتونی از سایت www.pogostick.net هم استفاده کنی. این سایت NTP رو با TCP و پورت 13 عرضه می کنه که میتونی از کلاس TcpClient برای اتصال به اون استفاده کنی...
وب سرویس هایی نیز وجود دارند مثل http://www.nanonull.com/TimeService/TimeService.asmx که البته برای مطمئن بودن از آنلاین بودن همیشگی سرور پیشنهاد می کنم از time.windows.com استفاده کنی.

موفق باشید.

mp2009
شنبه 07 مهر 1386, 23:15 عصر
مرسی بهروز جان
اما میشه نحوه استفاده هم توضیح بدی؟
باز هم تشکر میکنم بابت جواب

Behrouz_Rad
شنبه 07 مهر 1386, 23:17 عصر
اما میشه نحوه استفاده هم توضیح بدی؟
نه... خودت تلاش کن... واضح گفتم.

موفق باشید.

mp2009
شنبه 07 مهر 1386, 23:24 عصر
نه... خودت تلاش کن... واضح گفتم.
میدونم حق با شماست
میخواستم اگه میشه یه مثالی برای من تازه کار بزنید

web developer
یک شنبه 08 مهر 1386, 13:00 عصر
برای Sync کردن زمان باید از NTP استفاده کنی.
ویندوز برای Sync کردن زمان از دو سرور time.windows.com و time.nist.gov استفاده می کنه.
میتونی بر روی زمان در Taskbar دو بار کلیک کنی و در سربرگ Internet Time این دو گزینه رو ببینی.
اینها دو تا از NTP هایی هستند که میتونی از اونها استفاده کنی.
time.windows.com از UDP و پورت 123 استفاده میکنه. میتونی با استفاده از کلاس Socket به این NTP متصل بشی و Stream برگشتی که شامل زمان و تاریخ گرینویچ هست رو دریافت کنی.
همچنین میتونی از سایت www.pogostick.net (http://www.pogostick.net) هم استفاده کنی. این سایت NTP رو با TCP و پورت 13 عرضه می کنه که میتونی از کلاس TcpClient برای اتصال به اون استفاده کنی...
وب سرویس هایی نیز وجود دارند مثل http://www.nanonull.com/TimeService/TimeService.asmx که البته برای مطمئن بودن از آنلاین بودن همیشگی سرور پیشنهاد می کنم از time.windows.com استفاده کنی.

موفق باشید.

مگه زمان خود سرور هاست با با یکی از این سرور ها Sync نیست ؟
فقط کافیه از زمان سرور اختلاف رو کم کنیم تا به ساعت GMT برسیم.

مشکل چیه که اینقدر مسئله رو دشوار کردید؟

موفق باشید.

Behrouz_Rad
یک شنبه 08 مهر 1386, 13:16 عصر
مگه زمان خود سرور هاست با با یکی از این سرور ها Sync نیست ؟
فقط کافیه از زمان سرور اختلاف رو کم کنیم تا به ساعت GMT برسیم.

مشکل چیه که اینقدر مسئله رو دشوار کردید؟

موفق باشید.
نه نیست!
من یک هاست ایرانی دارم که زمان و تاریخ ایران رو داره و یک هاست انگلیسی دارم که زمان گرینویچ رو داره و یک هاست دیگه دارم که زمان کانادا رو داره!
در یکی از اصول مهندسی نرم افزار گفته میشه که یک برنامه باید قابلیت حمل پذیری داشته باشه...
حمل پذیر بودن در این حالت بدین معناست که در مواجهه با زمان های مختلف برنامه دچار اشتباه نشه.
NTP یک مسئله ی متداول و روزمره برای افرادی هست که زمان و تاریخ برای اونها مهم هست و به جزئیات توجه میکنن و برنامه های کیلویی نمینویسن!

و اینگونه است که صورت مسئله برای ما دشوار میشه که البته ما بلدیم چجوری آسونش کنیم :چشمک:

موفق باشید.

web developer
یک شنبه 08 مهر 1386, 13:29 عصر
نه نیست!
من یک هاست ایرانی دارم که زمان و تاریخ ایران رو داره و یک هاست انگلیسی دارم که زمان گرینویچ رو داره و یک هاست دیگه دارم که زمان کانادا رو داره!
در یکی از اصول مهندسی نرم افزار گفته میشه که یک برنامه باید قابلیت حمل پذیری داشته باشه...
حمل پذیر بودن در این حالت بدین معناست که در مواجهه با زمان های مختلف برنامه دچار اشتباه نشه.
NTP یک مسئله ی متداول و روزمره برای افرادی هست که زمان و تاریخ برای اونها مهم هست و به جزئیات توجه میکنن و برنامه های کیلویی نمینویسن!

و اینگونه است که صورت مسئله برای ما دشوار میشه که البته ما بلدیم چجوری آسونش کنیم :چشمک:

موفق باشید.


کاملا درسته! برای قابلیت حمل و نقل با شما موافقم!
تو حمل و نقل هم بالاخره یه سری تنظیمات اولیه داریم.

ولی یه اصل دیگه هم تو مهندسی نرم افزار هست که اگه بتونی با یه خط کمتر الگوریتم درستی رو پیاده کنی بهتره! :چشمک:

به هر حال از جواب دقیق و کامل و جامع شما نمیشه گذشت.

موفق باشید.

mp2009
دوشنبه 09 مهر 1386, 01:32 صبح
آخرشم ما نفهمیدیم

مثالی وجود نداره؟

Behrouz_Rad
دوشنبه 09 مهر 1386, 08:49 صبح
شما ما را کچل نمودی ;)


Dim obj_TcpClient As New TcpClient("www.pogostick.net", 13)
If (obj_TcpClient.Connected) Then
Dim obj_NS As NetworkStream = obj_TcpClient.GetStream()
Dim obj_SR As New StreamReader(obj_NS)
Dim strResult As String = obj_SR.ReadLine()
Response.Write(strResult)
End If

برای UDP نیاز به مطالعه ی RFC 2030 داری.

موفق باشید.

mp2009
دوشنبه 09 مهر 1386, 11:37 صبح
مرسی بهروز جان
شر منده به خدا
سایت www.pogostick.net (http://www.pogostick.net) ساعت رو به وقت ایران نشون میده؟

Behrouz_Rad
دوشنبه 09 مهر 1386, 11:43 صبح
سایت www.pogostick.net ساعت رو به وقت ایران نشون میده؟
شما حتی به خودت زحمت نمیدی که تکه کدی که نوشتم رو امتحان کنی!
فکر نمیکنم دیگه به Reply کردن من در این تاپیک نیازی باشه....

خوش باشید.