122 messaggi dal 09 ottobre 2008
Salve

volevo chiedere se secondo voi con le librerie disponibili per ASP.net è possibile pubblicare direttamente su una pagina facebook senza effettuare il login, sia foto che testo.

Grazie mille
Roberto
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,
chiaramente qualche forma di autenticazione deve esserci, altrimenti chiunque potrebbe postare contenuti in forma anonima su una qualsiasi pagina.

Se con 'login' intendi l'azione di entrare con il proprio browser nel sito facebook.com e digitare email e password, allora no, perché hai come alternativa la Facebook Javascript SDK che si presta molto bene ad essere integrata in altre applicazioni web. Se l'utente non era autenticato dovrà comunque, ad un certo punto, fornire email e password ma ciò si verificherà all'interno di una popup di Facebook che quindi non lo costringerà ad abbandonare il tuo sito.

Il login "diretto" (cioè l'invio di email e password lato server a Facebook) non è consentito perché Facebook usa il meccanismo di autenticazione OAuth che protegge le credenziali di accesso dell'utente.

Lato server potrai usare la Facebook SDK per .NET, scaricabile da NuGet, che lavora con un access token ottenuto dopo il login, che ti da accesso a determinate informazioni dell'utente per un periodo di tempo limitato.
Con quello potrai inviare post e foto ad una pagina di cui l'utente è amministratore, ammesso che al momento del login ti abbia anche fornito i necessari privilegi per manipolare le sue informazioni.

ciao
Modificato da BrightSoul il 08 giugno 2013 14.13 -

Enjoy learning and just keep making
3 messaggi dal 09 novembre 2009
Ciao,
è la prima volta che provo a utilizzare le API di facebook e sto riscontrando dei problemi.
Vi chiedo aiuto perchè non so proprio come uscirne.
Attualmente utilizzo OAuth per autenticarmi a facebook e ho abilitato nella mia applicazione WEBAPI l'utilizzo dell'autenticazione facebook,
in questo modo :
facebookAuthOptions = new FacebookAuthenticationOptions()
{
AppId = "xxxxx",
AppSecret = "xxx",
Provider = new FacebookAuthProvider(),
SignInAsAuthenticationType = DefaultAuthenticationTypes.ExternalCookie,

};

facebookAuthOptions.Scope.Add("publish_actions");
facebookAuthOptions.Scope.Add("publish_pages");

app.UseFacebookAuthentication(facebookAuthOptions);

Tutto funziona correttamente e mi loggo ricevo il claim contenente il token che salvo su db per effettuare successive richieste.
Il problema sorge quando tento di pubblicare qualcosa sul profilo dell'utente che si è loggato, in quanto mi restituisce sempre un errore (#200)"the-user-hasnt-authorized-the-application-to-perform". Pensavo che aggiungendo le due permissions nello scope,come da codice sopra riportato, mi chiedesse se l'utente autorizzava o meno la pubblicazione sul suo profilo invece niente di tutto ciò.
Altra particolarità con l'utente Admin dell'applicazione tutto funziona , ma con gli utenti generici che si autenticano non funziona.
Andando su profilo della mia applicazione facebook al login permission ho solo queste tre voci: ["user_friends","email","public_profile"] e non vedo quelle aggiunte da codice nello scope.
Mi potete aiutare?
Vi ringrazio molto.
Ciao
Paolo
hai poi risolto? puoi condividere un po' di codice?
grazie

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.