2012-12-18 14 views
23

से लॉगआउट मैंने लिंकडइन एपीआई के साथ काम किया है और मेरे आवेदन में लॉगआउट क्लिक करने के बाद लिंकडिन एपीआई से लॉग आउट करने के बारे में मार्गदर्शन की आवश्यकता है।लिंक्डइन एपीआई

function closeSession(){ 
    IN.User.logout(); 
} 
<a href="logout.php" class="myButton" onclick="closeSession()" id="logout-link">Logout In LinkedIn</a> 

मैं भी कोशिश की है: मैं निम्नलिखित कोड की कोशिश की है session_destroy()

बुला अंत से

$('logout-link').click(function() { 
    IN.Event.on(IN,'logout', function() { 
     window.location.href = [site-logout-url]; 
    }); 
    IN.User.logout(); 
}); 

मैं एक ब्राउज़र में सत्र को नष्ट करने की कोशिश की, मैं इस सवाल का जवाब मुझे मिल गया की कोशिश की this question के लिए स्टैक ओवरफ़्लो से। मुझे कोई सही समाधान नहीं मिला। क्या कोई मुझे समाधान बता सकता है?

+0

[इस भेजा?] (Http://developer.linkedin.com/documents/inauth-inevent-and-inui) –

+0

मैं देख सकता हूँ कि आपके डोम क्वेरी सही नहीं है और मूल रूप से यह नहीं है ऑनक्लिक घटना को संलग्न करने में सक्षम। जब आप आईडी द्वारा एक DOM तत्व पूछ रहे हों तो आपको हैश # जोड़ना होगा: $ ('# logout-link')। क्लिक करें (...) –

उत्तर

0

लगता है अपने onclick बुलाया जा रहा है नहीं है, करने का प्रयास करें: मुझे लगता है अपने जावास्क्रिप्ट निष्पादित हो जाता है इससे पहले कि आप पुनः निर्देशित कर रहे

function closeSession(){ 
    IN.User.logout(); 
    return true; 
} 
<a href="logout.php" class="myButton" onclick="return closeSession();" id="logout-link">Logout In LinkedIn</a> 

या

<a href="#" class="myButton" onclick="closeSession()" id="logout-link"> 
    Logout In LinkedIn 
</a> 

और जे एस

function closeSession() { 
    if (typeof IN === 'object' && typeof IN.User === 'object' && IN.User.isAuthorized()) { 
    //user logged in linkedin 
    //call linkedin logout with websites logout function as callback 
    alert("I m inside linkedin object check.."); //do you see this 
    IN.User.logout(logout); 
    } 
    else { 
    logout(); 
    } 
} 
function logout() { 
    window.location.href = "URL_TO_YOUR_LOGOUT.PHP"; 
} 
+0

मैंने चेतावनी() को रखकर जांच की है; उस विधि में, अलर्ट प्रदर्शित किया गया था। – MUTHURAJ

+0

@MUTHURAJ संपादित कोड देखें, अगर कोड में अनधिकृत() की स्थिति वास्तव में मौजूद है या उपयोगकर्ता वास्तव में लिंकिन के साथ अधिकृत है, तो उम्मीद है कि –

0

, तो इस तरह से कोशिश करें? जावास्क्रिप्ट कोड:

function closeSession(){ 
    IN.User.logout(); 
    location.href="logout.php"; 
} 

एचटीएमएल कोड:

<span style="cursor:pointer" onclick="closeSession()">Logout In LinkedIn</span> 
+0

काम करता है, मैंने आपके समाधान का प्रयास किया है लेकिन इसे सही नहीं मिला – MUTHURAJ

+0

मुझे बताएं कि क्या खुशी है, फ़ंक्शन की पहली पंक्ति निष्पादित या नहीं, पृष्ठ 'logout.php' पर रीडायरेक्ट किया गया है – Dexter

1

सुनिश्चित करें कि आप

<script type="text/javascript" src="http://platform.linkedin.com/in.js"></script> 
अपने मुख पृष्ठ पर

है, यानी शामिल जहां आपको लॉग आउट कर रहे हैं कि सुनिश्चित करें।

0
To make it work 



<script type="text/javascript" src="http://platform.linkedin.com/in.js"> 
api_key: <?php echo sfConfig::get('app_linkedin_api_key'); ?> 
authorize: true 
</script> 
<script> 
IN.Event.on(IN, "logout", function() {onLinkedInLogout();}); 

function onLinkedInLogout(){ 
// User is logged out 
window.location.href='<?php echo url_for("@homepage");?>' 
} 
</script> 
<a href="#" onclick="IN.User.logout()"><?php echo __("Logout");?></a> 

<div class="signin"><script type="in/Login" data-onAuth="onLinkedInAuth"></script> 

<script type="text/javascript"> 

function onLinkedInAuth() { 
IN.API.Profile("me") 
.fields("id") 
.result(function(me) { 
var id = me.values[0].id; 
//Do stuff like redirect... 
}) 
} 
</script> 
0

यहां 2 अलग-अलग मुद्दे हैं। आप अपने सर्वर साइड स्क्रिप्ट से लिंक किए गए लॉगआउट नहीं कर सकते हैं जबतक कि आप उनके फ़ंक्शन को कॉल न करें। जब आप logout.php पर उतरते हैं तो आपके पास session_destroy() होना चाहिए; पेज के शीर्ष पर। सुनिश्चित करें कि logout.php

-2

कोड में session_destroy() पर कोई session_start() नहीं है।

0

IN.User.logout() को कॉल करने का प्रयास करने से पहले आपको LinkedIn जावास्क्रिप्ट प्लेटफ़ॉर्म लोड करने की आवश्यकता है, आपको केवल जावास्क्रिप्ट लाइब्रेरी को लोड होने के बाद ही कोड चलाया जाना चाहिए।

<script type="text/javascript" src="http://platform.linkedin.com/in.js"> 
    api_key: mykey 
    authorize: true 
    onLoad: onLoad 
</script> 

<script type="text/javascript"> 
function onLoad() { 
    try { 
    IN.User.logout(); 
    } catch (err) { 
    console.log(err); 
    } 
    location.href="index.php"; 
} 
</script> 
0
<script type="text/javascript" src="http://platform.linkedin.com/in.js"> 
api_key: mykey 
authorize: true 
onLoad: onLoad 
</script> 

      <script type="text/javascript"> 
       function onLoad() { 
        try { 
       IN.User.logout(); 
         } catch (err) { 
        console.log(err); 
          } 
        location.href="index.php"; 
        } 
        </script> 
संबंधित मुद्दे