Vorrei creare un utente dalle sue credenziali di Facebook senza utilizzare chiamate non documentate. Non credo sia possibile basare sull'implementazione attuale della libreria Javascript Parse per due motivi noti:Come si integra l'API Parse Javascript con Appcelerator e non si usano chiamate non documentate?
1. L'implementazione corrente della libreria non supporta il client HTTP Appcelerator, pertanto non riesce immediatamente. Ho risolto questo problema estendendo il metodo ajax della libreria Parse Javascript esistente per utilizzare lo Appcelerator HTTP client
.
http://www.clearlyinnovative.com/blog/post/34758524107/parse-appcelerator-titanium-the-easy-way
C'è stato circa 2K vista sul ponte di diapositive che ho creato e circa lo stesso sul post del blog, quindi è abbastanza chiaro per me la gente vuole far funzionare tutto questo.
2. L'attuale implementazione della libreria presuppone l'integrazione con la libreria Javascript di Facebook e anche quella libreria non funziona con Appcelerator. Infatti Appcelerator ha integrato Facebook direttamente nel framework, quindi non c'è bisogno della libreria javascript. Tutte le informazioni necessarie per collegare un account utente a Facebook possono essere facilmente ottenute utilizzando le chiamate API che gli sviluppatori di Appcelerator conoscono già.
La domanda originale è stata rimossa dal forum Parse Support, quindi sto cercando una soluzione da una comunità più ampia.
Hi Aaron,
Non è utile ad altri sviluppatori per promuovere utilizzando senza documenti API nella biblioteca Parse come una soluzione, in modo da prendere la decisione di non elencati esso. Capisco che potrebbe essere d'aiuto nel tuo caso particolare con il titanio e sei ben consapevole delle implicazioni dell'utilizzo delle API private , ma altri utenti potrebbero ignorare questo avviso. Spero che tu capisca .
Héctor Ramos Solutions Architect, Parse https://parse.com/help
Questo è il codice che era troppo pericoloso per essere lasciato visibile sul forum:
// 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));
});
domanda su Appcelerator Forum
Domanda su Parse Forum
Qual è il tuo problema? Sembra che tu abbia risposto o lavorato intorno a tutti i problemi. –
è supportato e può essere modificato in qualsiasi momento con un aggiornamento della libreria parse.js –
Inviate per e-mail il loro personale dirigente? Sembra che fino a quando non cambieranno le API che sono ufficialmente esposte e dar loro un modo per farlo funzionare, sei bloccato senza una "risposta". –