2016-03-31 6 views
8

निम्नलिखित कोड एक बाहरी अनुप्रयोग में एक यूआरएल को खोलने के लिए supposes में लगातार काम नहीं करता:उद्घाटन कस्टम प्रोटोकॉल यूआरएल क्रोम

var a = document.createElement('a'); 
a.href = 'myprotocol:[email protected];fromuser=John%20Doe;mode=audiovideo'; 

document.body.appendChild(a); 
a.click(); 

ऐप इंस्टॉल नहीं किया जाता है, पर कुछ पीसी Chrome मौन में विफल रहता है, जबकि पर

Launch

इस व्यवहार कहाँ परिभाषित किया गया है: दूसरों यह इस विंडो को प्रदर्शित करता है?

उत्तर

0

आवेदन यूआरआई स्कीमा को संघ

आप Windows में एक विशिष्ट यूआरआई स्कीमा को संभालने के लिए अपने अनुप्रयोग पंजीकृत करना चाहते हैं, तो आप यह रजिस्ट्री में पंजीकरण करना होगा। यह MSDN article में बताया गया है और गुगलिंग "Registering an Application to a URI Scheme" बहुत सारे उदाहरण देता है।

HKEY_CLASSES_ROOT/ 
    your-protocol-name/ 
    (Default) "URL:your-protocol-name Protocol" 
    URL Protocol "" 
    shell/ 
     open/ 
     command/ 
      (Default) PathToExecutable 

वेब एप्लिकेशन स्कीमा पंजीकरण

आप गूगल क्रोम के साथ register a custom protocol handlernavigator.registerProtocolHandler का उपयोग कर सकते हैं (फ़ायरफ़ॉक्स भी सुविधा है)।

navigator.registerProtocolHandler(
    'web+mystuff', 'http://example.com/rph?q=%s', 'My App'); 

कृपया ध्यान दें, कि आपका प्रोटोकॉल web+ से शुरू होना है। अन्यथा आपको SECURITY_ERR: DOM Exception 18 त्रुटि मिलेगी।

या, यदि आप क्रोम ऐप विकसित कर रहे हैं, तो आप अपनी मेनिफेस्ट फ़ाइल में register your handlers कर सकते हैं।

"url_handlers": { 
    "view_foo_presentation": { 
    "matches": [ 
     "https://www.foo.com/presentation/view/*" 
    ], 
    "title": "View Foo presentation" 
    } 
} 

आप Chrome यूआरएल (chrome://chrome-urls/) पर गौर करें और यदि आप सेटिंग्स में से किसी में इसे बदल सकते हैं देख सकते हैं।

+0

उत्तर के लिए धन्यवाद, लेकिन यह वह नहीं है जिसे मैं ढूंढ रहा हूं। मुझे 'रजिस्टरप्रॉटोकॉल हैंडलर' के बारे में पता है, लेकिन मैं एक डेस्कटॉप ऐप खोलना चाहता हूं, न कि वेबपैप। – Pavlo

+0

@Pavlo जिसे यूआरआई स्कीमा पंजीकरण कहा जाता है। मैंने विंडोज़ में इसे कैसे किया जाए इस पर एक उदाहरण और लिंक जोड़ा। मुझे लगता है कि यह आपका लक्ष्य ओएस है। – Uzbekjon

+0

मुझे पता है कि इसे कैसे कार्यान्वित किया जाए। मेरा सवाल क्रोम व्यवहार के बारे में है। – Pavlo

संबंधित मुद्दे