Facebook API zonder client authenticatie voor openbare inhoud

stemmen
12

Ik ben het ontwikkelen van een site voor een klant die al de foto's van zijn producten op Facebook, en hij wil dezelfde albums worden herhaald op zijn site. Ik was al met behulp van Facebook Connect, dus ik liet een combinatie van photos.getAlbumsen photos.getdynamisch maken van de galerijen.

So far so good, maar toen realiseerde ik me dat als er geen gebruiker trog FBC aangemeld, wordt er geen sessie gemaakt en de API onbruikbaar, zelfs voor de inhoud die publiek beschikbaar. Ik wil uiteraard de albums voor iedereen en niet alleen de mensen die hun rekeningen te sluiten te tonen.

Is dit hoe alle functies in de Facebook API werk? Wat is de beste (gemakkelijker te implementeren) oplossing voor deze situatie?

De vraag is gesteld op 16/06/2009 om 11:58
bron van user
In andere talen...                            


3 antwoorden

stemmen
0

Dat heeft geen zin voor mij - ik heb een (relatief eenvoudige) app die maakt in facebook zelfs als de gebruiker nooit in facebook eerder ingelogd (in dat geval geeft demo gegevens).

Bij gebruik van de facebook PHP bibliotheek, ik dit doe gewoon:

$ Facebook = new Facebook ($ api_key, $ geheim);

Geen sessie-id nodig - maar, uiteraard, api functies die afhankelijk zijn van informatie over de gebruiker zijn niet van plan om te werken.

U kunt ook kijken naar een "oneindige sessie" voor uw app - kon je een oneindige sessie sleutel voor jezelf maken en gebruiken die sessie voor toegang tot de API.

antwoordde op 18/06/2009 om 16:47
bron van user

stemmen
3

Voor de goede orde, ik erin geslaagd om deze situatie op te lossen door het ontwikkelen van een kleine backend dat de klant nodig heeft om een keer in te loggen op Facebook en geef offline_access uitgebreide toestemming aan de FB app, dus ik kan zijn sessie toets op te slaan en deze gebruiken om de Facebook API client elke authenticeren keer dat ik moet FQL gebruiken om niet-openbare inhoud krijgen.

Men kan natuurlijk voeg wat caching in het midden om onnodige verzoeken om Facebook te voorkomen, maar het werkt boete voor maanden zonder het raken van beperkingen die ik ken.

antwoordde op 17/10/2009 om 18:39
bron van user

stemmen
11

Vanaf september 2010 kunt u nu authenticeren net als een toepassing, zonder bijbehorende gebruiker. Zie http://developers.facebook.com/docs/authentication/ voor meer informatie. Of u kunt dit voorbeeld code om een access token te krijgen uit te voeren:

curl -F grant_type=client_credentials \
 -F client_id=your_app_id \
 -F client_secret=your_app_secret \
 https://graph.facebook.com/oauth/access_token
antwoordde op 21/09/2010 om 02:54
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more