[英]How would I make a post on the users wall extending this example?
我正在制作一个带有phonegap,adobe构建的应用程序,并使用Facebook进行此代码段的身份验证。
我希望通过某种形式的回调来处理“成功”登录,并在用户墙上发布信息。
<script type="text/javascript">
var my_client_id = "133914256793487", // YOUR APP ID
my_secret = "862f10f883f8d91617b77b4b143abc8d", // YOUR APP SECRET
my_redirect_uri = "https://www.facebook.com/connect/login_success.html", // LEAVE THIS
my_type ="user_agent", my_display = "touch"; // LEAVE THIS
var facebook_token = "fbToken"; // OUR TOKEN KEEPER
var ref; //IN APP BROWSER REFERENCE
// FACEBOOK
var Facebook = {
init:function(){
// Begin Authorization
alert("we have begun");
var authorize_url = "https://www.facebook.com/dialog/oauth?";
authorize_url += "client_id=" + my_client_id;
authorize_url += "&redirect_uri=" + my_redirect_uri;
authorize_url += "&display=" + my_display;
authorize_url += "&scope=publish_stream";
//CALL IN APP BROWSER WITH THE LINK
ref = window.open(authorize_url, '_blank', 'location=no');
ref.addEventListener('loadstart', function(event){
Facebook.facebookLocChanged(event.url);
});
} ,
facebookLocChanged:function(loc){
if (loc.indexOf("https://www.facebook.com/connect/login_success.html") >= 0 ) {
//CLOSE INAPPBROWSER AND NAVIGATE TO INDEX
ref.close();
//THIS IS MEANT TO BE DONE ON SERVER SIDE TO PROTECT CLIENT SECRET
var codeUrl = 'https://graph.facebook.com/oauth/access_token?client_id='+my_client_id+'&client_secret='+my_secret+'&redirect_uri='+my_redirect_uri+'&code='+loc.split("=")[1];
console.log('CODE_URL::' + codeUrl);
$.ajax({
url: codeUrl,
data: {},
type: 'POST',
async: false,
cache: false,
success: function(data, status){
//WE STORE THE TOKEN HERE
localStorage.setItem(facebook_token, data.split('=')[1].split('&')[0]);
},
error: function(){
alert("Unknown error Occured");
}
});
}
}
}
</script>
<script type="text/javascript">
Facebook.init();
</script>
有人可以建议如何适当扩展此示例吗?在哪里可以找到能够帮助自己的API? 目前,它成功要求用户登录-弹出Facebook-我成功接受,然后返回成功-并出现红色消息,提示用户应安全保留此URL。
干杯,
安迪
我知道更改代码的整体结构是一项艰巨的任务,但是我强烈建议您使用PhoneGap Facebook Plugin 。 而且,由于您使用的是构建,因此您还可以轻松地从Build集成Facebook Connect插件 。
我强烈建议您检查一下PhoneGap Facebook插件存储库的phonegap-facebook-plugin / example / HackBook
文件夹中找到的以下两个文件: index.html和js / auth.js。
使用javascript FB Api时,可以将回调函数指定为第一个参数,如FB.login(function(response) { ... });
您可以在docs中找到一个示例。
auth.js的第25行显示了使用以下代码FB.api('/me' ...
来调用FB API的示例。虽然此代码请求有关已登录用户的信息,但是您可以编写任何JavaScript使用FB.api()
API调用,您可以在此处了解(请看第四个示例)。
签出代码,看看它是如何工作的/如何实现的,如果您有任何疑问,请告诉我:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.