FAQ |
Kalender |
|
![]() |
#1 | |||
|
||||
Medlem
|
Du har förstått helt rätt Anders. Någon idé?
|
|||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Klarade millennium-buggen
|
Att något är fel, för så ska det inte fungera. Kontrollera att API-nycklar och URL:er är korrekta.
Tänk på att det är skillnad på www.domän.se och domän.se om du inte satt "base domain" i inställningarna. |
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Nykomling
|
Testade radera alla filer som har med Facebook Connect och göra. Sen gjorde jag om processen igen.
Nu så stängs popupen efter responsen från Facebook, men sidan jag var på när jag klickade upp inloggningspopup:en, laddas _inte_ om. Jag har ingen 'base url' då jag inte behöver använda mig av FBC på flera subdomäner. Vad kan problemet vara nu och vad kan jag göra för att felsöka det på det mest informativa tillvägagångssättet? |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Nykomling
|
Upplever lite av ett problem nu.
Har testat lite olika javascript från Facebook Community. Saken är den att jag ser om inloggningsuppgifterna är korrekta i min MasterPage, därefter skapar jag sessioner osv. Men när facebook stänger popupen och fyller min <div id="user" /> med användarinfo (på klientsidan givetvis), och jag laddar om sidan, så är jag inte inloggad (på serversidan givetvis). Mitt javascript ser ut såhär: Kod:
FB_RequireFeatures(["XFBML"], function() { FB.init("9afc553810bcd6aeef3ecdbd72a8b48a", "http://Min-Domän.com/xd_receiver.htm"); FB.Facebook.get_sessionState().waitUntilReady(function() { FB.Connect.ifUserConnected(update_user_box); }); }); function update_user_box() { var user_box = J("#user"); user_box.append( "<span>" + "<fb:profile-pic uid='loggedinuser' facebook-logo='true'></fb:profile-pic>" + "Welcome <fb:name uid='loggedinuser'></fb:name>" + "You are signed in with your facebook account." + "</span>"); FB.XFBML.Host.parseDomTree(); } Jag läser av uppgifterna såhär: Kod:
FBConnectAuthentication auth = new FBConnectAuthentication(ConnectAuthentication.ApiKey, ConnectAuthentication.SecretKey); if (auth.Validate() != ValidationState.Valid) { //Response.Redirect("/Default.aspx"); // The request does not contain the details of a valid Facebook connect session - you'll probably want to throw an error here. } else if (!String.IsNullOrEmpty(Request.QueryString["session"])) { FBConnectSession fbSession = auth.GetSession(); string userId = fbSession.UserID; string sessionKey = fbSession.SessionKey; Facebook.Schema.user user = p.Api.Users.GetInfo(long.Parse(userId)); if (user != null) { var friends = p.Api.Friends.Get(long.Parse(userId)); string FirstName = user.first_name; string LastName = user.last_name; string ShortenLastName = string.Empty; string UsernameTry = string.Empty; UsernameTry = GenerateUserNameWithNumbers(FirstName); UsernameTry = UsernameTry.Trim(); if (LoginUser(userId)) { if (CurrentUser.IsFromFacebook) { if (!CurrentUser.IsFacebookEmailActivated) { Response.Redirect("/User/ActivateAccount.aspx"); } } } if (Celpocket.Profile.UserExists(userId)) { UsernameTry = GenerateUserNameWithNumbers(FirstName); } bllCreateAccount.CreateAccount(UsernameTry, userId, RandomPassword.Generate(10), FirstName, LastName, user.birthday_date); if (LoginUser(userId)) { if (CurrentUser.IsFromFacebook) { if (!CurrentUser.IsFacebookEmailActivated) { Response.Redirect("/User/ActivateAccount.aspx"); } } } } } Senast redigerad av peterbf den 2010-01-11 klockan 11:52 |
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Nykomling
|
Det mesta funkar som det ska nu... Men jag har problem med en sista grej, och det är ett litet litet JavaScript-block som ser ut som följer:
Kod:
FB_RequireFeatures(["XFBML"], function() { FB.init("9afc553810bcd6aeef3ecdbd72a8b48a", "http://MinDomän.com/xd_receiver.htm"); FB.Facebook.get_sessionState().waitUntilReady(function() { window.location.href = window.location.href; FB.Connect.ifUserConnected(update_user_box); }); }); Men det som ju naturligtvis sker är att den gör en reload hela tiden, den stoppar aldrig. Jag testade definiera en variabel med värdet '0' innan funktionen, och sen öka den med variabel++ för att sen se om den är '0' - och då köra reload. Så den bara körs en gång. Men trög som jag är så när sidan laddas om nollställs ju variabeln såklart... En annan lösning? Senast redigerad av peterbf den 2010-05-12 klockan 11:04 |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Nykomling
|
Löste det med jQuery.cookie().
Sen raderar jag cookien när man loggar ut med facebook-knappen. |
||
![]() |
![]() |
Svara |
Ämnesverktyg | |
Visningsalternativ | |
|
|