سؤال

لذلك لدينا longshot، سأبدأ مع ذلك.

هل هو / هل يمكن أن يكون من الممكن اكتشاف خدمات HTTP المعلنة المعلنة في جافا سكريبت وحدها؟

لماذا سيكون هذا مفيدا؟ تخيل خدمة محلية تعتني ببعض البيانات (مثل Lat / Lat / Long الحالية)، يتم التعرض للبيانات عبر WebService وإعلانته بواسطة Bonjour Zeroconf. قد يرغب موقع (بعيد) معرفتك الحالية / الطويلة الحالية وبدلا من الاضطرار إلى معرفة أنك تعمل mygpsserverversion2. يمكن للموقع استخدام JavaScript للبحث في BONJOUR المحلي _Compatible_location_services._tcp ثم تابع بمجرد أن يكون لديه عنوان IP.

إذا كان هذا مستحيلا (أعتقد أنه من المحتمل أن تكون الحال، فإن جافا سكريبت مقيدة إلى حد ما) فما هي العقبات وأي أحد لديه أي أفكار حول كيفية التغلب عليها؟

هل كانت مفيدة؟

المحلول

يبدو أن هذا ممكنا باستخدام الكروم مقابس API., ، لكنني اتخذت نظرة سريعة فقط.

متصفح MDNS. يبدو أنه ينفذ هذا باستخدام واجهات برمجة التطبيقات.

نصائح أخرى

الجواب القصير هو رقم (على الأقل ليس على منصة Linux).

مضحك يجب أن تسأل: لقد كنت أعمل على جلب هذا النوع من الوظائف في متناول متصفحات الويب. واحدة من بلدي نجاح في هذا المسعى هو NPAPI MDNS البرنامج المساعد للكروم. وبعد البرنامج المساعد واجهات أساسا مع افاهي Zeroconf. (MDNS - خادم DNS Multicast).

أنا أعمل حاليا على جسر آخر لإغلاق هذه الفجوة: قاعدة بيانات "خفيفة الوزن" ( a la couchdb. ) سيتم استخدامها بواسطة تطبيقات سطح المكتب لتسجيل نقاط نهاية HTTP الخاصة بهم. ثم قرأت الامتدادات هذه النقاط النهائية من جافا سكريبت وتكون قادرة على التفاعل مباشرة مع الخدمات المعلن بها.

تحديث: هناك أمل من خلال اكتشاف خدمة W3C.

تدعي هذه المكتبة القيام بذلك في جافا سكريبت:http://quickconnect.sourceforge.net/browser/index.html.

يجب أن أعترف بأنني سأكون مهتما جدا إذا كان من الممكن اكتشاف خدمات Bonjour في جافا سكريبت :)

أنا أعرف هذا موضوع قديم. هل وجدت مشروع Github هذا الذي يسمح لك باكتشاف الخدمات (والنشر) باستخدام MDNS - https://github.com/watson/bonjour

تنفيذ بروتوكول Bonjour / Zeroconf في جافا سكريبت نقي. نشر الخدمات على الشبكة المحلية أو اكتشاف الخدمات الموجودة باستخدام DNS البث المتعدد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top