Frage

Ich versuche, alle Benutzer Foto zu erhalten, indem mit FQL (Facebook C # SDK, ASP .NET MVC, VB, iFrame Canvas-Anwendung). Mein Code ist folgende:

Dim app As New FacebookApp()
Dim result As New List(Of FB_Picture)
Dim photoList As Object = app.Fql("SELECT src_small,src_big,src,caption FROM photo WHERE aid IN ( SELECT aid FROM album WHERE owner=" + FacebookId.ToString() + " ) ORDER BY created DESC LIMIT " + FromN.ToString() + "," + ToN.ToString())

For i As Integer = 0 To photoList.Count
result.Add(New FB_Picture() With {.Caption = photoList(i).caption, .Src = photoList(i).src, .Src_big = photoList(i).src_big, .Src_small = photoList(i).src_small}) 
Next
Return result

FB_Picture ist meine Klasse zum Speichern von Benutzern Bildern.

Meine app hat user_photos Berechtigungen.

Aber ich habe einen Fehler - Ungültige OAuth 2.0 Zugriffstoken

FacebookOAuthException: Invalid OAuth 2.0 Access Token]
Facebook.FacebookApp.MakeRequest(HttpMethod httpMethod, Uri requestUrl, Byte[] postData, String contentType) +393
Facebook.<>c__DisplayClassf.<OAuthRequest>b__e() +20
Facebook.FacebookApp.WithMirrorRetry(Func`1 body) +225
Facebook.FacebookApp.OAuthRequest(Uri uri, IDictionary`2 parameters, HttpMethod httpMethod) +338
Facebook.FacebookApp.RestServer(IDictionary`2 parameters, HttpMethod httpMethod) +481
Facebook.FacebookAppBase.Api(String path, IDictionary`2 parameters, HttpMethod httpMethod) +236
Facebook.FacebookAppBase.Api(IDictionary`2 parameters) +132
Facebook.FacebookAppExtensions.Fql(FacebookAppBase app, String query) +310

Können Sie mir helfen? Was kann ich das beheben? Kann ich FQL mithilfe von Facebook C # SDK?

verwenden
War es hilfreich?

Lösung

Sie müssen eine aktive Sitzung haben eine FQL Abfrage zu machen. Schauen Sie sich die Proben in der neuesten Version der Facebook C # SDK für Hilfe, wie Token einen Zugang zu bekommen. Sobald Sie einen Zugriffstoken haben, nur den Code die folgenden ändern:

Dim app As New FacebookApp("your_access_token_here")

Andere Tipps

Es ist eine Sache, dass die Entwickler des Facebook-SDK nicht klar machen, um neue Benutzer des SDK oder in der Tat neue Leute nähern Facebook Entwicklung.

Der Facebook-SDK ist offensichtlich ein Wrapper, aber es ist ein Wrapper oben auf Cookies. Was dies bedeutet, am Ende des Tages ist, dass Facebook den Sitzungsstatus für Ihre Anwendung erhalten. Sie halten es nicht, sie tun. So jederzeit klickt ein Benutzer Ihrer Anwendung auf einen Link in Ihrer Anwendung und Sie möchten, dass die Benutzer verfolgen (oder genauer gesagt, dass Session) Sie Ihren Link verweist auf eine URL wie sicherstellen müssen:

http://apps.facebook.com/Your_Application_Name_Here

und nicht

http://www.Your_Application_Name_Here.com

, wenn Sie nicht dann kann Facebook nicht die Sitzung verfolgen und Sie haben ihre Domäne effektiv verlassen. Das merken Sie, wenn Sie den Fehler machen, dass ich tat, als ich Link schreibe in meinen Ansichten ist aus Url.Action mit:

<a href="<%= Url.Action("CreateOrder", "Home") %>">Create an Order</a>

Ich hielt einen ähnlichen Fehler bei Ihnen zu bekommen. Deshalb Totten und der andere Typ, den das SDK geben Ihnen Hilfsmethoden geschrieben wie:

<%= Url.CanvasAction("CreateOrder", "Home") %>

HTH

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top