这似乎是一个非常明显的,基本的东西,期待从图谱API,但我遇到了严重的困难.我想要做的就是获取任何特定URL的ID.他们有一个方法:
https://graph.facebook.com/?ids=http://www.imdb.com/title/tt0117500/
Run Code Online (Sandbox Code Playgroud)
这很有效.但如果我尝试另一个网址,比如我的博客,
https://graph.facebook.com/?ids=http://dusda.vox.com
Run Code Online (Sandbox Code Playgroud)
它没有像我所有的例子那样给我一个数字ID.相反,这个:
{"http:\/\/dusda.vox.com":{"id":"http:\/\/dusda.vox.com"}}
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用那个"id",我会得到插孔(可能是因为查询字符串看起来无法解析):
Request: https://graph.facebook.com/http://dusda.vox.com/likes
Response: {"id":"http:\/\/dusda.vox.com\/likes"}
Run Code Online (Sandbox Code Playgroud)
那么这有什么用呢?Graph API是选择性可靠的,还是我误解了什么?我已经尝试过我知道在Facebook上流行的网址,而且我的结果好坏参半.
我有一个工作的Facebook应用程序,大多数用户只会使用一次.通过Facebook工作流程,用户可以指示他们是否希望自己的墙壁被写入.基于此,我要么是否要求publish_stream权限.
稍后,一小部分用户会再次使用该应用程序.以前不想写在墙上的一些人(因此我没有要求发布流)现在想写信给他们的墙.
在用户授权应用程序后,如何申请其他权限?
同样,如何查询用户列出他们已授予的权限?
我一直在使用一些粉丝页面遇到一些问题,并通过Facebook Graph API获取他们的详细信息.
当我尝试获取Fan页面的详细信息时,Graph API仅返回false,但现在正在返回
{
"error": {
"message": "Unsupported get request.",
"type": "GraphMethodException",
"code": 100
}
}
Run Code Online (Sandbox Code Playgroud)
这不是所有Facebook页面的情况,只是少数几个.
例如,当我尝试在https://graph.facebook.com/CaptainMorganMacedonia获取此页面的详细信息时 ,它只返回错误.
该页面是公开的,有超过25个粉丝,但我仍然无法获取页面的详细信息.它是Facebook的东西,还是页面有一些错误的配置?
Facebook个人资料图片是公开的.
例如https://graph.facebook.com/oleg.dats/picture它是正方形但是小
到了要获得更大的图片https://graph.facebook.com/oleg.dats/picture?type=large但是这个不是广场.
有没有办法得到方形图片(200px/200px)?
我正在尝试使用Node.js将base64图像上传到FaceBook页面.如果我从文件系统中读取文件(即使用fs.readFileSync('c:\ a.jpg'),我已设法让上传工作所有的多部分数据等
但是,如果我使用base64编码的图像并尝试上传它,它会给我以下错误: {"error":{"message":"(#1) An unknown error occurred","type":"OAuthException","code":1}}
我已经尝试将其转换为二进制new Buffer(b64string, 'base64');并上传,但没有运气.
我现在已经为此奋斗了3天,所以任何帮助都会非常感激.
编辑:如果有人也知道如何将base64转换为二进制并成功上传它,这对我也有用.
编辑:代码片段
var postDetails = separator + newlineConstant + 'Content-Disposition: form-data;name="access_token"' + newlineConstant + newlineConstant + accessToken + newlineConstant + separator;
postDetails = postDetails + newlineConstant + 'Content-Disposition: form-data; name="message"' + newlineConstant + newlineConstant + message + newlineConstant;
//Add the Image information
var fileDetailsString = '';
var index = 0;
var multipartBody = new Buffer(0);
images.forEach(function (currentImage) {
fileDetailsString = fileDetailsString + separator + newlineConstant + …Run Code Online (Sandbox Code Playgroud) 我正在为一个促进手语的慈善机构工作,他们希望每天将视频发布到他们的FB页面.视频数量很大(且不断增长),因此他们希望以编程方式安排上传.我真的不介意我最终在做什么编程语言,但是我尝试了以下内容并没有走得太远:
Perl使用WWW::Facebook::API(旧的REST API)
my $res = $client->video->upload(
title => $name,
description => $description,
data => scalar(read_file("videos/split/$name.mp4"))
);
Run Code Online (Sandbox Code Playgroud)
身份验证没问题,这正确地发布了一个facebook.video.upload方法https://api-video.facebook.com/restserver.php.不幸的是,这会返回"方法未知".我认为这与弃用的REST API有关.
Facebook::Graph在Perl或fb_graphRuby中的gem.(OAuth API)
我甚至无法进行身份验证.这两个都面向网络而不是OAuth的桌面应用程序,但我认为我应该能够做到:
my $fb = Facebook::Graph->new(
app_id => "xxx",
secret => "yyy",
postback => "https://www.facebook.com/connect/login_success.html"
);
print $fb->authorize->extend_permissions(qw(publish_stream read_stream))->uri_as_string;
Run Code Online (Sandbox Code Playgroud)
在我的浏览器中转到该URL,捕获code返回的参数,然后
my $r = $fb->request_access_token($code);
Run Code Online (Sandbox Code Playgroud)
不幸:
Could not fetch access token: Bad Request at /Library/Perl/5.16/Facebook/Graph/AccessToken/Response.pm line 26
Run Code Online (Sandbox Code Playgroud)同样在Ruby中,使用fb_graph,
fb_auth = FbGraph::Auth.new(APP_ID, APP_SECRET)
client = fb_auth.client
client.redirect_uri = "https://www.facebook.com/connect/login_success.html" …Run Code Online (Sandbox Code Playgroud)在v1.0 API中,我能够通过他们的Facebook ID获取这样的朋友:
{
"name": "Somename SomeSurname",
"id": "100007797060798"
}
Run Code Online (Sandbox Code Playgroud)
在v2.0中,我只能使用taggable_friends来获取这些信息,但是我必须在文档中遗漏了一些东西,因为我得到的id是这样的(id总是不同的):
{
"id": "AaKJ-QN8OlY3m-2DHeVnc5oQZFnx_V0ptUF8XFEstr3EcS1LltvAx0_xptve3DWc_vI1zP0s4RhVMOTk1EqDvzCHMkEqFRMIkuXtyXe5d9O1-Q",
"name": "Somename someSurname"
}
Run Code Online (Sandbox Code Playgroud)
有人能指出我可以在哪里找到真正的身份证吗?
Facebook计划在V2.0之后放弃对FQL的支持https://developers.facebook.com/docs/apps/changelog/#v2_0_fql
使用FQL可以轻松完成以下任务
SELECT like_info.like_count, comment_info.comment_count, share_count
FROM stream
WHERE post_id = "POST_ID_HERE"
Run Code Online (Sandbox Code Playgroud)
我无法在图api中找到上述方法的替代品.我知道我们可以得到喜欢和评论
POST_ID/likes?summary=true AND
POST_ID/comments?summary=true
Run Code Online (Sandbox Code Playgroud)
但我无法找到类似的股票终点.
注意:我不是在寻找能够获取URL输入和查询图形api的解决方案,而是寻找通过POST_ID获取共享计数的解决方案
PAGE_ID/feed?fields=comments.limit(1).summary(true),likes.limit(1).summary(true)
Run Code Online (Sandbox Code Playgroud)
我看过了.
结果应该是这样的:
{
"data": [{
"like_info": {
"like_count": 3506
},
"comment_info": {
"comment_count": 263
},
"share_count": 278
}]
}
Run Code Online (Sandbox Code Playgroud)
任何帮助将受到高度赞赏.
干杯!
更新:这是一个访问令牌问题,因为我使用的令牌没有"read_stream"权限.
我的xml看起来像这样
<com.facebook.login.widget.LoginButton xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fb_login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:text="CONNECT WITH FACEBOOK"
android:textColor="@color/white"
android:textSize="20sp"
android:textStyle="bold"
android:background="@drawable/button_fb_login"/>
Run Code Online (Sandbox Code Playgroud)
和背景drawble xml是
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape>
<solid android:color="#4e69a2" />
<stroke android:width="3dip" android:color="#4e69a2" />
<padding android:bottom="0dip" android:left="0dip" android:right="0dip" android:top="0dip" />
</shape>
</item>
<item>
<shape>
<solid android:color="#3b5998" />
<stroke android:width="3dip" android:color="#3b5998" />
<padding android:bottom="0dip" android:left="0dip" android:right="0dip" android:top="0dip" />
</shape>
</item>
Run Code Online (Sandbox Code Playgroud)
现在在android studio预览屏幕中,它按预期显示.

但是当我在手机或模拟器上运行它时,默认显示"登录FACEBOOK",就像这样

如何在运行应用程序时获取自定义文本?
android facebook-graph-api facebook-android-sdk facebook-login android-facebook
我正在开发一个使用facebook登录的应用程序.登录后,用户必须设置其他信息和个人资料图片,图片也是从登录的Facebook帐户中提供的.现在,整个帐户详细信息(包括该配置文件图片的URL)都保存在我的数据库中.
令我惊讶的是,个人资料图片突然停止工作.在浏览器中打开它的URL给我这条消息"URL签名已过期"
下载这些照片并将它们保存到我自己的服务器对我来说不是一个真正的选择.有什么办法可以让这个URL持久耐用吗?
facebook ×7
android ×1
base64 ×1
encoding ×1
javascript ×1
node.js ×1
perl ×1
reliability ×1
ruby ×1