这是我在自己的墙上发布消息的方式:
private string PostFacebookWall(string accessToken, string message)
{
var responsePost = "";
try
{
var objFacebookClient = new FacebookClient(accessToken);
var parameters = new Dictionary<string, object>();
parameters["message"] = message;
responsePost = objFacebookClient.Post("feed", parameters).ToString();
}
catch (Exception ex)
{
responsePost = "Facebook Posting Error Message: " + ex.Message;
}
return responsePost;
}
但是现在我只想发布一个我创建的新组,而不是发布到我的墙上。我该怎么办?
编辑**
这是现在的方法:
private string PostFacebookWall(string accessToken, string message)
{
var responsePost = "";
try
{
var objFacebookClient = new FacebookClient(accessToken);
var parameters = new Dictionary<string, object>();
parameters["message"] = message;
responsePost = objFacebookClient.Post("/" + GroupId + "feed", parameters).ToString();
}
catch (Exception ex)
{
responsePost = "Facebook Posting Error Message: " + ex.Message;
}
return responsePost;
}
GroupId是该组链接中包含15个数字的字符串:
https://www.facebook.com/groups/344087212396598/
但它不会在群组页面中发布任何内容。 我需要在代码中更改/添加任何内容吗? 或者我需要获得一个新的访问令牌?
在facenook开发者网站的这个应用程序中,我去了Graph Api Explorer,我现在再次点击没有获取访问令牌,我有这个屏幕:
我是否需要更改此选项的任何内容? 现在我的程序在我更改代码之前发布了我的walla上没有问题,但现在我想只发布到我打开的组。
编辑**
这就是我现在所做的,我去了应用权限选项,并在扩展的Prmissions选项中标记为manage_pages
然后我获得了新的访问令牌代码。 在我的代码我的程序中,我做了:
private string PostFacebookWall(string accessToken, string message)
{
var responsePost = "";
try
{
var objFacebookClient = new FacebookClient(accessToken);
var parameters = new Dictionary<string, object>();
parameters["message"] = message;
responsePost = objFacebookClient.Post("/" + GroupId + "feed", parameters).ToString();
}
catch (Exception ex)
{
responsePost = "Facebook Posting Error Message: " + ex.Message;
}
return responsePost;
}
但我得到了异常错误:
FacebookOAuthException:
(OAuthException - #803)(#803)您请求的某些别名不存在:344087212396598feed
Facebook.FacebookOAuthException was caught
HResult=-2146233088
Message=(OAuthException - #803) (#803) Some of the aliases you requested do not exist: 344087212396598feed
Source=Facebook
ErrorCode=803
ErrorSubcode=0
ErrorType=OAuthException
StackTrace:
at Facebook.FacebookClient.ProcessResponse(HttpHelper httpHelper, String responseString, Type resultType, Boolean containsEtag, IList`1 batchEtags)
at Facebook.FacebookClient.Api(HttpMethod httpMethod, String path, Object parameters, Type resultType)
at Facebook.FacebookClient.Post(String path, Object parameters)
at ScrollLabelTest.Form1.PostFacebookWall(String accessToken, String message) in e:\test\test\test\Form1.cs:line 352
InnerException:
Form1第352行是:
responsePost = objFacebookClient.Post("/" + GroupId + "feed", parameters).ToString();
如何修复异常?
答案 0 :(得分:1)
您可以通过向/ GROUP_ID / Feed连接发出HTTP POST请求来创建链接,帖子或状态消息。
您必须使用publish_actions权限添加“message”和“link”参数。