我目前正在构建一个网站,我将为用户提供一个在 Facebook 上分享照片的链接,应用程序将:
- 向用户提供从 Facebook 请求权限的链接
- 使用用户接受权限后的访问代码重定向回网站
- 服务器端发布照片到用户的照片
为了生成第一步的链接,我这样做:
var fb = new FacebookClient();
var options = new
{
client_id = "MY_APP_ID",
client_secret = "MY_APP_SECRET",
redirect_uri = string.Format("http://localhost:51182/Home/FacebookShare?path={0}", Server.UrlEncode(path)),
response_type = "code",
scope = "publish_stream"
};
var loginUrl = fb.GetLoginUrl(options);
然后将此loginUrl
值添加到我的 MVC ViewModel 并在 View 中的链接中使用。
但是,我注意到loginUrl
包含client_secret
明文中的值。这不是一件坏事吗?用户不应该看不到client_secret
吗?我是不是走错了路?