Я использую facebook api, чтобы опубликовать сообщение на странице facebook как приложение facebook. Я создал приложение facebook. Сообщение также делится, но проблема в том, что он не отправляется как приложение для facebook. Вместо этого он запрашивает у пользователя логин, а затем он публикует сообщение как пользователь. Любая помощь, связанная с тем, как я могу опубликовать пост в качестве приложения для Facebook, будет оценена, поскольку я пробовал это в течение длительного времени. Thanx заранее друзей. Код, который я использовал, выглядит следующим образом.Опубликовать как приложение для Facebook на странице Facebook
using Facebook;
protected void CheckAuthorization()
{
string authorizationCode = Request.QueryString["code"];
string access_token = Facebook_GetAccessToken(authorizationCode);
FacebookShare(access_token);
}
private string Facebook_GetAccessToken(string pAuthorizationCode)
{
string urlGetAccessToken = "https://graph.facebook.com/oauth/access_token";
urlGetAccessToken += "?client_id=my app id";
urlGetAccessToken += "&client_secret=app secret";
urlGetAccessToken += "&redirect_uri=" + Facebook_GetRedirectUri();
urlGetAccessToken += "&code=" + pAuthorizationCode;
string responseData = RequestResponse(urlGetAccessToken);
if (responseData == "")
{
return "";
}
NameValueCollection qs = HttpUtility.ParseQueryString(responseData);
string access_token = qs["access_token"] == null ? "" : qs["access_token"];
return access_token;
}
protected void FacebookShare(string token)
{
if (token != null)
{
Int64 transactionid = Convert.ToInt64(Cache["transactionid"]);
string app_id = "my app id";
string app_secret = "app secret";
string scope = "offline_access,read_stream,publish_actions,publish_stream,manage_pages,status_update";
dynamic parameters = new ExpandoObject();
parameters.link = "my website link";
parameters.name = "my project name";
parameters.picture= "my website logo";
var client = new FacebookClient(token);
client.Post("/1374775846180409/feed", parameters); // this is my facebook page id where I want to share post.
Response.Cookies["transaction"].Expires = DateTime.Now;
}
else
{
}
}
Что касается вышеприведенного кода, я получаю код авторизации на Facebook успешно.
Вы не можете публиковать на странице "как" приложение. Если вы хотите опубликовать эту страницу, вам нужно использовать токен доступа к странице. – CBroe
Хорошо. Если это возможно, используя страницу facebook, можно ли это сделать без запроса логина? – Manbir
Получение маркера доступа к странице, конечно, требует входа в систему, по крайней мере, один раз. – CBroe