我正在关注教程Getting Started with an ASP.NET MVC 3 Website
使用5.0.25(RTW)版本。
一切都很好,除了默认显示“弹出窗口”使用屏幕的整个宽度,因此在本地运行应用程序很好,但是当我把它放在Facebook页面上时按钮是不可见的。
public ActionResult LogOn(string returnUrl)
{
var oAuthClient = new FacebookOAuthClient(FacebookApplication.Current);
oAuthClient.RedirectUri = new Uri(redirectUrl);
var loginUri = oAuthClient.GetLoginUrl(new Dictionary<string, object> {
{ "state", returnUrl },
{"response_type", "token"},
{ "display", "popup" },
{ "scope", "offline_access,email" } });
return Redirect(loginUri.AbsoluteUri);
}
(截屏)http://imageshack.us/photo/my-images/855/fbnobuttons.png/
尝试使用iframe,但不允许使用iframe:“page”再次显示完整的Facebook页面(页面中)。 我知道我可以使用javascript sdk,但我需要这样做。
我将不胜感激任何帮助
答案 0 :(得分:0)
我认为这与您的return Redirect(..)
当您在iframe中时,使用此代码只会更改iframe位置,而您应该重定向整个页面。
您应该使用以下代码返回一个空的html页面,而不是使用返回重定向:
<script type="text/javascript">
top.location.href='%s';
</script>
其中%s
是您的login.AbsoluteUri
这有帮助吗?