ब्राउजरमा WebSocket हार्टबिटलाई अनुप्रयोग प्रोटोकल चाहिन्छ
जब ब्राउजर JavaScript ले सिधै WebSocket Ping फ्रेम पठाउन सक्दैन, तब सहमत अनुप्रयोग हार्टबिट डिजाइन गर्नुहोस्।
ब्राउजरको WebSocket API सँग send() छ। यसले JavaScript लाई प्रोटोकलका Ping फ्रेम पठाउन सक्ने सामान्य ping() विधि उपलब्ध गराउँदैन।
यदि तपाईंको अनुप्रयोगले {"type":"heartbeat"} जस्तो पाठ सन्देश पठाउँछ भने त्यो अनुप्रयोग डाटा हो। सर्भरले सन्देश बुझ्नुपर्छ र प्रतिक्रिया परिभाषित गर्नुपर्छ। त्यो करार लागू नगर्ने सर्भरले पाठमा ping शब्द छ भनेर मात्र प्रोटोकल Pong ले जवाफ दिन बाध्य छैन।
स्वीकृतिको अर्थ के हो, यसले पर्खिरहेको हार्टबिट कसरी पहिचान गर्छ र पुरानो स्वीकृति कहिले धेरै ढिलो हुन्छ भन्ने परिभाषित गर्नुहोस्। यसलाई व्यावसायिक कारोबारको स्वीकृतिबाट अलग राख्नुहोस्।
JavaScript टाइमरमा पनि तालिका सम्बन्धी सीमाहरू हुन्छन्। पृष्ठभूमिका ट्याब र व्यस्त मुख्य थ्रेडहरूले कलब्याक ढिलो बनाउन सक्छन्। छुटेको ठ्याक्कै टाइमर सीमालाई प्रोक्सीले अगाडि पठाउन छोड्यो भन्ने निर्णायक प्रमाण मान्नु हुँदैन।
ब्राउजरले प्रोटोकलका नियन्त्रण फ्रेमहरू आन्तरिक रूपमा ह्यान्डल गर्न सक्छ, तर त्यसले अनुप्रयोग कोडलाई प्रत्येक Ping वा Pong को पोर्टेबल दृश्य दिँदैन। यदि पृष्ठलाई आफ्नै जीवन्तता निर्णय चाहिन्छ भने स्पष्ट अनुप्रयोग करार र पुनःप्राप्ति नीति प्रयोग गर्नुहोस्।
जसको readyState OPEN छ त्यस्तो सकेट स्थानीय रूपमा खुला मानिन्छ; टाढाको अनुप्रयोगले तपाईंको अन्तिम सन्देश प्रशोधन गर्यो भन्ने यो स्वतन्त्र मापन होइन। तपाईंले वास्तवमै जवाफ दिनुपर्ने प्रश्नसँग मिल्ने प्रमाण प्रयोग गर्नुहोस्।