我正在开发一个应用程序,在登录页面上也支持使用
登录facebook<fb:login-button>.
我在facebook上设置了两个应用程序:
当我在自己的计算机上进行开发时,单击登录按钮按预期运行,我登录到我的应用程序。 当我将我的应用程序放到服务器(更改appid和secret以使用第二个应用程序)并单击登录按钮时,Facebook登录对话框打开,当我输入电子邮件和密码时它会关闭,但我的applciation不会登录。 如果我检查服务器,我会看到处理此Web请求的进程不断增加内存大小(每秒3MB)并占用50%或更多的CPU时间。如果此过程不会很快停止,则服务器将无响应,因为它使用的内存最大可能,CPU时间为100%。 一旦facebook登录对话框关闭,就会发生这种情况。
在我的应用程序中,我使用的是来自codeplex的库facebook C#SDK。
如果有人有任何关于我可能做错的信息,我会非常感谢答案。
答案 0 :(得分:1)
发现问题......它不是关于facebook而是.Net Framework。似乎某些版本的框架支持从动态对象传递参数,而其他版本则不支持。 所以当我从
更改代码时dynamic fbuser = GetUserData();
DoSomethingWithID(fbuser.id);
到
dynamic fbuser = GetUserData();
object fbid = fbuser.id;
DoSomethingWithID(fbid);
它开始工作......真的不明白为什么有时甚至在服务器上它会起作用(在远程调试之后它总是起作用直到dll被替换但是......真的不在乎:))
感谢所有回复。
答案 1 :(得分:0)
听起来像无限重定向循环。
使用Firefox的Firebug或Chrome,IE或Safari的内置开发人员工具查看您的浏览器正在执行的操作。我认为您的应用设置可能存在设置错误,通过查看流量可能会让我们陷入罪魁祸首。