Post 作为应用程序添加到 Facebook 页面;这可以做到吗?
Post to Facebook Page as an App; Can this be done?
我想知道以下是否可行,因为我看了FB的文档后还不清楚。场景如下:
一个网站有写文章的作者。作者希望将这些文章的链接分享到有影响力的人 ('influencers') 拥有的 FB 页面。影响者希望允许网站自动 post 文章链接到他们的页面。网站作者不是FB用户,所以不能要求登录FB。相反,文章链接需要通过网站的 FB 应用程序共享。这将发生在服务器端。
然后我知道网站的 FB 应用程序需要 post 访问影响者页面的权限,但我无法向网站作者请求客户端的此权限,因为他们不是 FB 用户。根据文档。
我真正想要的是影响者能够授予 FB 应用程序永久访问权限以在其页面上共享链接。这可能吗?
我不一定是在寻找代码,只是在寻找有关我需要在何时何地执行哪些操作以进行此设置的建议。谢谢!
如果您希望扩展页面访问令牌,请参考:
public async Task<string> ExtendAccessTokenAsync(string accessToken)
{
dynamic response = await ExtendAccessTokenAsync<dynamic>(accessToken);
return response.access_token;
}
private async Task<T> ExtendAccessTokenAsync<T>(string accessToken)
{
var response = await httpClient.GetAsync($"oauth/access_token?grant_type=fb_exchange_token&client_id={options.AppId}&client_secret={options.AppSecret}&fb_exchange_token={accessToken}");
if (!response.IsSuccessStatusCode)
{
return default(T);
}
var result = await response.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<T>(result);
}
T
可以是 class 来表示返回的对象(请参阅 FB 文档了解属性),或者在我的例子中,我只使用 dynamic
来表示 T
因为我只想要 access_token
属性.
我想知道以下是否可行,因为我看了FB的文档后还不清楚。场景如下:
一个网站有写文章的作者。作者希望将这些文章的链接分享到有影响力的人 ('influencers') 拥有的 FB 页面。影响者希望允许网站自动 post 文章链接到他们的页面。网站作者不是FB用户,所以不能要求登录FB。相反,文章链接需要通过网站的 FB 应用程序共享。这将发生在服务器端。
然后我知道网站的 FB 应用程序需要 post 访问影响者页面的权限,但我无法向网站作者请求客户端的此权限,因为他们不是 FB 用户。根据文档。
我真正想要的是影响者能够授予 FB 应用程序永久访问权限以在其页面上共享链接。这可能吗?
我不一定是在寻找代码,只是在寻找有关我需要在何时何地执行哪些操作以进行此设置的建议。谢谢!
如果您希望扩展页面访问令牌,请参考:
public async Task<string> ExtendAccessTokenAsync(string accessToken)
{
dynamic response = await ExtendAccessTokenAsync<dynamic>(accessToken);
return response.access_token;
}
private async Task<T> ExtendAccessTokenAsync<T>(string accessToken)
{
var response = await httpClient.GetAsync($"oauth/access_token?grant_type=fb_exchange_token&client_id={options.AppId}&client_secret={options.AppSecret}&fb_exchange_token={accessToken}");
if (!response.IsSuccessStatusCode)
{
return default(T);
}
var result = await response.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<T>(result);
}
T
可以是 class 来表示返回的对象(请参阅 FB 文档了解属性),或者在我的例子中,我只使用 dynamic
来表示 T
因为我只想要 access_token
属性.