0

每个人。今天我在我的 Windows Phone 应用程序中遇到以下消息:

成功
安全警告:请将上面的 URL 视为您的密码,不要与任何人共享。

当我的用户通过 Web 浏览器控件登录时会发生这种情况,该控件从for GetLoginUrl的方法中获取登录 URL 。这个问题不仅发生在我的应用程序中,我还看到其他应用程序的用户也遇到了同样的问题。Facebook SDK

有人找到解决方案吗?

我在我的PictureWeather(Windows Phone 7 和 Windows Phone 8)和Picture2Cams(Windows Phone 8)应用程序中运行这个 SDK。

4

5 回答 5

5

有同样的问题。在我的应用程序中,我更改了这一行:
parameters["redirect_uri"] = "https:// www .facebook.com/connect/login_success.html";
到这一行:
parameters["redirect_uri"] = "https:// m .facebook.com/connect/login_success.html";
它现在有效。

于 2013-10-03T03:33:02.523 回答
0

在我们使用 Facebook SDK for Windows Phone ( http://facebooksdk.net/docs/phone/ )的 WP8 应用程序上遇到了同样的问题,更改重定向 URL 的指示解决方案也适用于我们。

感谢您提交此解决方案。

于 2013-10-03T14:54:23.903 回答
0

我自己遇到了这个问题,并进行了一些挖掘以找到问题的根源。问题似乎源于 Facebook 方面的一些未知(无论如何对我而言)更改,以前身份验证响应 URL 的形式为

https://www.facebook.com/connect/login_success.html#access_token= ...

由于某种原因,它现在从登录流程中返回为

https://www.facebook.com/connect/login_success.html#?access_token= ...

FacebookSDK.NET 中的代码在LoginPage.xaml.cs的第 104 行与一个简单的 Uri 相等测试进行了比较

if (e.Uri == WebAuthenticationBroker.EndUri)

当问号出现在中间时,它无法返回 true。我希望 Facebook 最终会纠正这个问题,只是因为太多的东西中断了,但与此同时,一个非常干净的解决方法是从 GIT 而不是 NuGet 获取 FacebookClient 源并将比较更改为这个

UriBuilder clean = new UriBuilder(e.Uri);
clean.Query = "";
    if (clean.Uri == WebAuthenticationBroker.EndUri)

然后代码将运行得很好,但这似乎最终是 Facebook 在查看其开发人员网站上的文档时的错误。

我希望这对其他人有所帮助,我注册 Stackoverflow 只是为了发表这篇文章。:)

于 2013-10-19T14:47:13.113 回答
0

使用最新的 facebook sdk for windows phone。这个问题在最新的 sdk 中得到了解决。我正在使用 Facebook.Client 0.8.2-alpha,它运行良好。我关注了 http://nuget.org/packages/Facebook.Clienthttp://facebooksdk.net/docs/phone/controls/login-ui-control

于 2014-02-02T17:22:14.983 回答
-1

我猜他这样做的唯一方法是从他们的官方 Github(FacebookFacebook.Client)下载这两个项目并在你的应用程序中引用它们,而不是使用你可以从 Nuget 获得的 DLL。

有了这两个项目,您可以在文件 FacebookSessionClient 中的 Facebook.Client 项目上更改此参数。然后构建所有项目并运行。

然而,这个解决方案对我也不起作用。

于 2013-10-18T15:51:23.187 回答