2015-03-24 10 views
7

का उपयोग करते समय लिंकडिन के साथ साइन इन करें आईओएस सफारी पर कॉलबैक ट्रिगर नहीं करता है, मैं जेएस एपीआई के माध्यम से एक वेबसाइट पर लिंक्डइन के साथ साइनइन का उपयोग कर रहा हूं। यह मेरे द्वारा परीक्षण किए गए कुछ डेस्कटॉप ब्राउज़र (विंडोज़ पर क्रोम और एफएफ, मैकोज़ पर सफारी) और थोड़ा पुराना एंड्रॉइड क्रोम पर ठीक काम करता है। लेकिन यह आईओएस सफारी पर विफल रहता है (मैं आईओएस 7 का उपयोग करता हूं)।जेएस एपीआई

मुद्दा यह है कि आईओएस सफारी पर, IN.User.authorize पर तर्क के रूप में पारित कॉलबैक निष्पादित नहीं किया गया है।

लाइन इस तरह दिखता है: IN.User.authorize(this._getProfileData, this);

_getProfileData ऊपर उल्लेख डेस्कटॉप ब्राउज़र और Android क्रोम, लेकिन नहीं आईओएस सफारी पर निष्पादित किया जाता है।

यह समस्या आईओएस के बिना भी पुन: उत्पन्न की जा सकती है: क्रोम के डेवलपर टूल के माध्यम से, आईफोन और आईपैड के लिए डिवाइस मोड में।

कोई सुराग?

उत्तर

3

दुर्भाग्य से, लिंकडइन का जेएस एसडीके आईओएस 5+ के साथ असंगत है जिस तरह से जावास्क्रिप्ट को क्रॉस-विंडो संचार प्रक्रियाओं के दौरान रोका गया है। 100% प्लेटफार्म संगतता सुनिश्चित करने के लिए आपको सर्वर-साइड आरईएसटी कॉल पर वापस गिरना होगा।

+2

+1 - यह एक बड़ी चेतावनी है और इसे लिंक्डइन जेएस एसडीके दस्तावेज़ीकरण में स्पष्ट रूप से इंगित किया जाना चाहिए ताकि लोग इसे अपने समाधान के समय को हल करने के समय बर्बाद न करें (जैसे मैंने अभी किया) बस यह पता लगाने के लिए कि यह नहीं करता है आईओएस पर काम नहीं करते हैं। दस्तावेज़ीकरण केवल इतना कहता है कि एसडीके सफारी 5+ का समर्थन करता है। भयानक समर्थन/दस्तावेज, लिंक्डइन। : - / –