您好我试图通过Facebook登录我的应用程序,而不是希望获得一些我正在获取的访问令牌的信息。
我试图将访问令牌从facebook js sdk传递到服务器上的webmethod供我稍后使用,但是调用失败了。
这是我的aspx:
<html>
<head>
<title>Facebook Login Authentication Example</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<script>
// 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));
// Init the SDK upon load
window.fbAsyncInit = function () {
FB.init({
appId: '474928559284763', // App ID
channelUrl: '//' + window.location.hostname + '/channel', // Path to your Channel File
status: true, // check login status
cookie: true, // enable cookies to allow the server to access the session
xfbml: true // parse XFBML
});
// listen for and handle auth.statusChange events
FB.Event.subscribe('auth.statusChange', function (response) {
if (response.authResponse) {
// user has auth'd your app and is logged into Facebook
var dataString = JSON.stringify({ access_T: response.authResponse.accessToken });
alert(dataString);
$.ajax({
type: "POST",
async: false,
url: "Default2.aspx/save_access_token",
data: dataString,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
},
error: function (result) {
alert(result.d);
}
});
FB.api('/me', function (me) {
if (me.name) {
document.getElementById('auth-displayname').innerHTML = me.name;
}
})
document.getElementById('auth-loggedout').style.display = 'none';
document.getElementById('auth-loggedin').style.display = 'block';
} else {
// user has not auth'd your app, or is not logged into Facebook
document.getElementById('auth-loggedout').style.display = 'block';
document.getElementById('auth-loggedin').style.display = 'none';
}
//here
//
$("#auth-logoutlink").click(function () { FB.logout(function () { window.location.reload(); }); });
});
}
</script>
<h1>
Facebook Login Authentication Example</h1>
<div id="auth-status">
<div id="auth-loggedout">
<div class="fb-login-button" autologoutlink="true" scope="email,user_checkins">Login with Facebook</div>
</div>
<div id="auth-loggedin" style="display: none">
Hi, <span id="auth-displayname"></span>(<a href="#" id="auth-logoutlink">logout</a>)
</div>
</div>
</body>
</html>
这是我的网络方法:
[WebMethod(EnableSession = true)]
public static void save_access_token(string access_T)
{
HttpContext.Current.Session["a_t"] = access_T;
}
修改
我检查了帖子上写的内容,现在是:
答案 0 :(得分:0)
问题解决了。网页形式的东西是不对的,当我开始一个新的工作。