2012-10-16 44 views
0

我試圖做這個教程https://developers.facebook.com/docs/howtos/login/getting-started/Facebook的OAuth的規劃,試圖讓用戶進行身份驗證

我已經做了一切必要的(我認爲),作爲提供本教程。目標是讓您的網頁使用OAuth驗證用戶的Facebook信息。

我的HTML的代碼如下...

<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
function main(){ // runs all the other methods when needed, and maintains the proper path from making the form to posting to Facebook 
    var imageURL = getImageURL(); 
    $("img[src='" + imageURL + "']").after("</br><form><input type=\"checkbox\" name=\"geo\" value=\"geolocation\"><b>Use Geolocation?</b> </br> <b>Additional Information About the Image: </b> <input type=\"comment\" name=\"cmnt\"></form>"); 
    alert("Form should have been placed."); 
} 

function getImageURL(){ 
    var url = "http://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Solid_black.svg/200px-Solid_black.svg.png"; 
    return url; 
} 

function login() { 
    FB.login(function(response) { 
     if (response.authResponse) { 
      // connected 
      testAPI(); 
     } else { 
      // cancelled 
     } 
    }); 
} 

function testAPI() { 
    alert('Welcome! Fetching your information.... '); 
    FB.api('/me', function(response) { 
     alert('Good to see you, ' + response.name + '.'); 
    }); 
} 
</script> 
</head> 
<body onload="main()"> 
    <div id="fb-root"></div> 
    <script> 
    //----------------------------- 
    // This is an initilization script created by Facebook. 
    //----------------------------- 
    // Additional JS functions here 
    window.fbAsyncInit = function() { 
FB.init({ 
    appId  : 'hiddenappid', // App ID 
    channelUrl : 'hiddenwebpage', // Channel File 
    status  : true, // check login status 
    cookie  : true, // enable cookies to allow the server to access the session 
    xfbml  : true // parse XFBML 
}); 

    // Additional init code here 
    FB.getLoginStatus(function(response) { 
     if (response.status === 'connected') { 
      // connected 
     } else if (response.status === 'not_authorized') { 
      // not_authorized 
      login(); 
     } else { 
      // not_logged_in 
      login(); 
     } 
    }); 
    }; 

    // Load the SDK Asynchronously 
    (function(d){ 
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    ref.parentNode.insertBefore(js, ref); 
    }(document)); 
</script> 

<b> Page </b> 
<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Solid_black.svg/200px-Solid_black.svg.png"> 

</body> 
</html> 

這是一些代碼,但它主要是從教程的所有代碼。你基本上可以忽略其餘的。

我只是想知道如何讓這個身份驗證腳本運行?當我開始頁面沒有任何反應。

此外,我沒有從一個實際的網頁運行這個,我只是運行的HTML文件。如果這可能會影響它,我也支持代理。提前致謝!

回答

1

該頁面必須公開訪問,並且您在Facebook應用中定義的URL必須與正在訪問的網址匹配。剛剛在我的測試網站上碰到這個相同的設置,http://omgtrolls.com

+0

還有什麼我不得不做的?像它應該只是自動運行? –

+0

好吧,我現在正在查看源代碼,並且我看到你是如何做到的。 –

+0

希望你能從中解析出正確的東西。它只是我的測試領域,我正在玩一些想法,所以它有點混亂。 – Geuis