只是一個發佈到塗鴉牆的動作讓我搞了很久.....

一直卡在發佈時會被瀏覽器擋住 (頁面載入就發佈到塗鴉牆)

印象中之前寫某個facebook app也發生過,後來發現好像是跟IE安全性有關

XSS篩選器停用應該就可以.....但又不能叫每個user 自己停用

Clipboard02.png   

然後那時候就懶惰了....沒有繼續找如何解決

然後這次搞定了 code 如下 :

<script language="javascript" type="text/javascript" src="http://connect.facebook.net/zh_TW/all.js"></script>

    FB.init({
        appId: '你的APP ID', // App ID
        status: true, // check login status
        cookie: true, // enable cookies to allow the server to access the session
        oauth: true, // enable OAuth 2.0
        xfbml: true  // parse XFBML
    });
    FB.Canvas.setAutoResize(false);
    FB.Canvas.setSize({ height: 750, width: 760 });

    $(document).ready(function () {
        FB.getLoginStatus(function (response) {
            if (response.session) {
               //登入成功
			 } else {
				//FB.login(function (response) {
				//	if (response.session) {
				//		var access_token = response.session.access_token;
				//	} else {
                      
				//	}
				//});
			 }
			 ShowFeed();   
        });
    });

    function ShowFeed() {
        FB.ui(
          {
              method: 'feed',
              name: $("#title").val(),
              link: 'http://apps.facebook.com/scolorappx/',
              picture: $("#CImg").val(),
              caption: 'Fifi Lapin',
              description: $("#des").val()
          },
          function (response) {
              if (response && response.post_id) {
                 // 已經貼到塗鴉牆
              } else {
                 // 沒貼到塗鴉牆
              }
          }
       );
    }

原因好像是要先取得fb 的access token才行的樣子,不然會一直出現js錯誤

發佈到塗鴉牆也會變成 window open 而被瀏覽器檔

所以就用了 FB.getLoginStatus

然後就會變這樣

Clipboard02.png  

arrow
arrow
    全站熱搜

    小雕 發表在 痞客邦 留言(1) 人氣()