2010-07-14 53 views
2

是否有人知道如何使用REST API/FB Connect在Flash中處理Facebook登錄,而無需彈出窗口或重定向?在Flash中登錄Facebook而不彈出或重定向?

這似乎不太可能,因爲登錄方法似乎強制彈出。

可能通過修改代碼使其載入一個看不見的iframe(即navigateToURL(new URLRequest(「http://www.facebook.com/connect/uiserver.php?app_id=....yadayadayada....&method=permissions.request」),「iframe」);),然後發送一個外部接口調用到javascript告訴它基於Flash中的交互處理隨後的DOM元素(登錄電子郵件和密碼字段並允許按鈕)?我樂於接受創造性的建議......無論他們是瘋狂還是複雜。

回答

1

使用本作的FB REST的API

//Make a variables variable 
var vars:URLVariables = new URLVariables; 

//set information that is to be POSTed to fb 
vars.user = username; 
vars.pass = pass; 

//connect to facebook api 
var Request:URLRequest = new URLRequest ("fbapiurlhere"); 
Request.method = URLRequestMethod.POST; 

//add variables 
Request.data = vars; 

//create a URL loader 
var loader:URLLoader = new URLLoader (Request); 

//specify what the returned data is 
loader.dataFormat = URLLoaderDataFormat.TEXT; 

//send it off 
loader.load(Request); 
+0

非常感謝你的回覆! :-) 我還有一些問題,如果你可以幫忙。 此方法是否會提供所需的登錄信息以獲取會話併發布到牆上?你怎麼能這樣做?就像是? session = new FacebookSessionUtil(API_KEY,SECRET_KEY,loaderInfo); var post:PublishPost = new PublishPost(message); var call:FacebookCall = session.facebook.post(post); ? 這裏的目標是我試圖張貼到用戶牆上,如果用戶提供我的Flash應用程序與他們的用戶名和通行證。請原諒我對這些事情的無知。 – eSteimann 2010-07-16 06:12:07

+0

我不經常使用Facebook API,Adobe只是開發了一個Facebook的API API類http://code.google.com/p/facebook-actionscript-api/檢查出來,它應該是你在找什麼,開心編程 – 2010-07-19 01:47:07

1

通話是不可能做沒有登錄的彈出或重定向。如果您使用的是JS SDK,則可以使用FB.getLoginStatus()進行後臺ping,如果它們已經授權您的應用程序,將返回用戶會話

+0

是的,你看起來對這個是正確的。吮吸。好吧。 – eSteimann 2010-07-21 15:24:59