Chrome आणि Firefox दरम्यान प्रॉक्सी एक्स्टेंशन पोर्ट करणे
Firefox आणि Chrome सारखी नावे असलेल्या एक्स्टेंशन API देतात, पण त्यांची कॉन्फिगरेशन मॉडेल वेगळी आहेत. फक्त namespace नाही, राउटिंग धोरण पोर्ट करा.
chrome चे नाव browser करणे हे प्रॉक्सी एक्स्टेंशनचे पूर्ण पोर्टिंग नाही.
Chrome चे फिक्स्ड-सर्व्हर कॉन्फिगरेशन mode आणि rules ऑब्जेक्ट वापरते. Firefox स्वतःचे जागतिक प्रॉक्सी सेटिंग्ज इंटरफेस आणि प्रत्येक विनंतीसाठी proxy.onRequest API देते. सारखी नावे त्यांच्या इनपुट ऑब्जेक्टना परस्पर बदलण्यायोग्य करत नाहीत.
तुम्हाला जे धोरण व्यक्त करायचे आहे त्यापासून सुरुवात करा: एक स्थिर एंडपॉइंट, PAC कॉन्फिगरेशन, किंवा प्रत्येक विनंतीसाठी स्वतंत्रपणे निवडलेला मार्ग. नंतर प्रत्येक ब्राउझरसाठी दस्तऐवजीकृत इंटरफेस वापरा.
Firefox चा प्रति-विनंती श्रोता एक्स्टेंशन कोडमधून प्रॉक्सी माहिती परत देऊ शकतो. त्यासाठी प्रॉक्सी परवानगी आणि अडवलेल्या विनंत्यांसाठी योग्य host प्रवेश आवश्यक आहे. Chrome च्या फिक्स्ड-सर्व्हर सेटिंग्ज ऑब्जेक्टची प्रत करून ब्राउझर प्रत्येक फील्ड ओळखेल अशी अपेक्षा करण्यापेक्षा ही वेगळी रचना आहे.
समर्थित Firefox आवृत्ती आणि manifest आवश्यकताही तपासा. proxy.register() वापरणारी जुनी उदाहरणे पूर्वीची API वर्णन करतात आणि ती सध्याच्या एक्स्टेंशनचा पाया नसावीत.
सामायिक धोरण डेटा ब्राउझर-विशिष्ट जुळवणीपासून वेगळा ठेवा. चाचण्या आणि निदानाने प्रत्येक ब्राउझरमध्ये गंतव्यासाठी निवडलेला मार्ग दाखवला पाहिजे, जाणीवपूर्वक केलेल्या थेट निकालासह. वैध manifest आणि त्रुटी न देणारा API कॉल ही फक्त सुरुवात आहे.