2013-05-10 5 views
64

मैं बिना किसी दस्तावेज़ के अपने फेसबुक प्रमाण-पत्रों से उपयोगकर्ता को बनाना चाहता हूं। मैं नहीं मानता कि यह दो ज्ञात कारणों के लिए पार्स जावास्क्रिप्ट पुस्तकालय की वर्तमान कार्यान्वयन पर आधारित संभव है:आप एस्सेलरेटर के साथ पार्स जावास्क्रिप्ट एपीआई को कैसे एकीकृत करते हैं और अनियंत्रित कॉल का उपयोग नहीं करते हैं?

1. पुस्तकालय की वर्तमान कार्यान्वयन Appcelerator HTTP ग्राहक का समर्थन नहीं करता तो यह तुरंत विफल रहता है। मैंने Appcelerator HTTP client का उपयोग करने के लिए मौजूदा पार्स जावास्क्रिप्ट लाइब्रेरी की AJAX विधि को विस्तारित करके इस समस्या को संबोधित किया है।

http://www.clearlyinnovative.com/blog/post/34758524107/parse-appcelerator-titanium-the-easy-way

मेरे द्वारा बनाए गए स्लाइड डेक पर और ब्लॉग पोस्ट पर एक ही के बारे में लगभग 2K विचार किया गया है, तो यह बहुत मेरे लिए स्पष्ट है लोगों को इस काम करना चाहते हैं।

2. पुस्तकालय का वर्तमान क्रियान्वयन हो जाती है आप फेसबुक जावास्क्रिप्ट पुस्तकालय के साथ एकीकृत कर रहे हैं और कहा कि पुस्तकालय या तो Appcelerator साथ काम नहीं करता। असल में एपसेलरेटर ने सीधे फ्रेमवर्क में फेसबुक को एकीकृत किया है, इसलिए जावास्क्रिप्ट लाइब्रेरी की कोई आवश्यकता नहीं है। किसी उपयोगकर्ता खाते को फेसबुक से लिंक करने के लिए आवश्यक सभी जानकारी आसानी से एपीआई कॉल का उपयोग करके प्राप्त की जा सकती है जो एपसेलरेटर डेवलपर्स पहले ही परिचित हैं।

मूल प्रश्न पारसे समर्थन मंच से हटा दिया गया था, इसलिए मैं व्यापक समुदाय से समाधान ढूंढ रहा हूं।

हाय हारून,

यह अन्य डेवलपर्स एक समाधान के रूप पार्स पुस्तकालय में गैर-दस्तावेजी API का उपयोग करके को बढ़ावा देने के लिए उपयोगी नहीं है, तो मैं यह असूचीबद्ध करने के लिए फैसला लेने के लिए। मैं समझता हूं कि यह आपके विशेष मामले में टाइटेनियम के साथ मदद कर सकता है, और आप निजी एपीआई का उपयोग करने के प्रभावों से अच्छी तरह से अवगत हैं, लेकिन अन्य उपयोगकर्ता उस चेतावनी को अनदेखा कर सकते हैं। मुझे आशा है कि आप समझें।

हेक्टर रामोस समाधान वास्तुकार, पार्स https://parse.com/help

इस कोड है कि बहुत खतरनाक था मंच पर दिखाई छोड़ा जा सकता है:

// setting auth data retrieved from Ti.Facebook login 
authData = { 
    "facebook" : { 
     "id" : Ti.Facebook.uid, 
     "access_token" : Ti.Facebook.accessToken, 
     "expiration_date" : expDate, // "format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" 
    } 
}; 

// Either way I resolved the problem, calling _handleSaveResult(true) on the returned user object, 
// I just dont think it should have been as difficult as it was 
// attempt to log the user in using the FB information 
var user = new Parse.User(); 
user.save({ 
    "authData" : authData 
}).then(function(_user) { 
    // force the user to become current 
    _user._handleSaveResult(true); //<-- this is the evil method I called 
    if (!_user.existed()) { 

     // add additional user information 
     var userInfo = { 
      "acct_email" : "[email protected]", 
      "acct_fname" : "Bryce", 
      "acct_lname" : "Saunders" 
     }; 
     return _user.save(userInfo); 
    } 
}).then(function(_user) { 

    alert('Hooray! Let them use the app now.'); 

}, function(error) { 
    alert(' ERROR: ' + JSON.stringify(error, null, 2)); 
}); 

प्रश्न Appcelerator पर फोरम

http://developer.appcelerator.com/question/152146/facebook-appcelerator-and-parse-integration-need-help

पार्स फोरम पर प्रश्न

https://parse.com/questions/how-do-you-integrate-the-parse-javascript-api-with-appcelerator-and-not-use-undocumented-calls

+0

आपकी समस्या क्या है? ऐसा लगता है कि आपने सभी मुद्दों के उत्तर दिए हैं या काम किया है। –

+0

यह समर्थित है और किसी भी समय parse.js लाइब्रेरी के अपडेट के साथ बदल सकता है –

+0

अभी तक उनके निष्पादन कर्मचारियों को ईमेल किया गया है? ऐसा लगता है जब तक कि वे परिवर्तित नहीं करते हैं कि कौन से एपीआई आधिकारिक रूप से उजागर होते हैं और इसके लिए काम करने का एक तरीका देते हैं, आप बिना किसी "उत्तर" के अटक जाते हैं। –

उत्तर

3
शायद

एक नए SDK के इस हिस्से, लेकिन आप केवल नहीं कॉल कर सकते हैं:

Parse.FacebookUtils.logIn({ 
    "facebook": { 
    "id": "user's Facebook id number as a string", 
    "access_token": "an authorized Facebook access token for the user", 
    "expiration_date": "token expiration date of the format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" 
    }, 
    { 
     success : function(_user) {}, 
     error : function(_user, error) {} 
    } 
}; 

यह जावास्क्रिप्ट गाइड में दर्ज नहीं किया है, लेकिन यह की unminified संस्करण में प्रलेखित है कोड वीजा होड़:

@param {String, Object} permissions The permissions required for Facebook 
log in. This is a comma-separated string of permissions. 
Alternatively, supply a Facebook authData object as described in our 
REST API docs if you want to handle getting facebook auth tokens 
yourself. 

मैं नवीनतम एसडीके जो मैं Github पर प्रकाशित करने के लिए जा रहा हूँ समर्थन करने के लिए अपने मूल कोड में कुछ अपडेट किये।

इस प्रयास का नेतृत्व करने के लिए बहुत बहुत धन्यवाद। आपकी मूल पोस्ट ने मुझे घंटे बचाया।

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