Lea*_*ria 5 asp.net facebook facebook-c#-sdk web
我已经看过很多关于ASP .NET网站和Facebook之间集成的文档,但我还没有找到一个简单的工作示例,即使使用Facebook C#SDK.
我想要的只是"登录Facebook"的例子,并获取基本的用户信息(如姓名,电子邮件和照片).
你能帮帮我吗?
非常感谢!
如你所说using Facebook C# SDK,这里是路径和一些画布应用程序的代码:
1-从visual studio创建您的Web应用程序
2-安装nuget并通过nuget Facebook C# SDK
3-从https://developers.facebook.com/apps/创建和配置您的应用程序获取.
4-您的Facebook集成的web配置:
<configuration>
<configSections>
<section name="facebookSettings" type="Facebook.FacebookConfigurationSection" />
</configSections>
<facebookSettings appId="123..." appSecret="abc...." siteUrl="http://apps.facebook.com/myapp/" canvasPage="http://app.facebook.com/myapp" secureCanvasUrl="https://myapp.com/" canvasUrl="http://myapp.com/" cancelUrlPath="http://www.facebook.com/" />
...
Run Code Online (Sandbox Code Playgroud)
通过使用sdk,您可以解析由facebook js sdk编写的签名请求或cookie
FacebookWebContext fbWebContext = new FacebookWebContext();
//Check if user auhtenticated
bool IsAuthenticated = fbWebContext.IsAuthenticated();
Run Code Online (Sandbox Code Playgroud)
在这里你可以有朋友数:
FacebookWebClient fbWebClient = new FacebookWebClient();
dynamic result = fbWebClient.Get("me/friends");
var friends = result["data"];
int frienCount = friends.Count;
Run Code Online (Sandbox Code Playgroud)
对于客户端:
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function () {
FB.init({
appId: '123...',
status: true,
cookie: true,
xfbml: true,
oauth:true });
};
(function () {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
} ());
<!-- rest of your html -->
</body>
Run Code Online (Sandbox Code Playgroud)
用于登录和询问权限 javascript
FB.getLoginStatus(function(response) {
console.log( response );
if ((response.status)&&(response.status=='connected')) {
//successs
} else {
//user declined
}, {scope:'user_likes, offline_access'}
});
Run Code Online (Sandbox Code Playgroud)
我更喜欢在我的项目中向客户端登录,因此尚未注册的用户有登陆页面,如果例如提交表单,那么我在上面调用代码块.
注意:您必须根据服务器将Internet Explorer的P3P标头设置为读/写cookie.对于IIS, global.asax:
protected void Application_BeginRequest(Object sender, EventArgs e)
{
HttpContext.Current.Response.AddHeader("p3p", "CP=\"CAO PSA OUR\"");
}
Run Code Online (Sandbox Code Playgroud)
Volià
| 归档时间: |
|
| 查看次数: |
4583 次 |
| 最近记录: |