标签: facebook-authentication

PHP SDK 3.1.1 getUser()有时会返回0

这让我疯狂> =(

$ facebook-> getUser()有时运行良好,但有时会返回0

这是我的代码: require 'fbapi/facebook.php';
$facebook = new Facebook(array(
'appId' => 'xxx',
'secret' => 'xxxxx',
));
$user = $facebook->getUser();

应用标识秘密是正确的.

这可能是getUser有时会返回0的原因???

php facebook-iframe facebook-graph-api facebook-authentication facebook-php-sdk

9
推荐指数
1
解决办法
1万
查看次数

某些设备上的"Cookie未启用错误"

我正在开发一个应用程序,它使用Facebook作为应用程序标准帐户创建流程的备用登录方法.在某些设备上,Facebook的Web对话框身份验证产生错误"您的浏览器未启用Cookie.请在您的安全首选项中进行调整".

到目前为止,我只在亚马逊的Kindle Fire和Galaxy Tab 10.1上看过它.我已经验证在两台设备上都启用了Cookie,并且设备可以使用其库存网络浏览器登录Facebook.在设备上重新安装我的应用程序没有任何效果,并且在启动Web对话框时,logcat中不存在任何错误或警告.我正在使用最新的Facebook SDK 3.0 for Android.

任何关于这个问题的见解将不胜感激.

编辑:我还应该补充一点,我不确定是否存在cookie问题.如果我输入了伪造的密码,FB对话框将尝试登录并失败并显示密码错误消息.如果我然后尝试再次登录,使用真实密码,对话框将通过,一切都将顺利处理.也正确创建了FB会话.仅当我首先尝试"真实"登录时才会出现Cookie错误,而不是第一次登录失败然后再次登录.

cookies android facebook facebook-authentication facebook-login

9
推荐指数
1
解决办法
7068
查看次数

$ facebook-> getLogoutUrl(); 链接不会将用户退出Facebook

我当前的用户故事是user1登录到我的网站和Facebook(这些帐户已连接等).

User1退出我的网站,但不登录Facebook.

在此user2登录到他的帐户之后,来自user1的剩余会话将与user2与我的站点的交互以及他们发布的人员相关联.

因此,为了解决这个问题,我检查了登录的用户是否实际拥有当前登录的facebook(这会导致他们进入facebook登出等),并显示一个允许用户注销的链接. .

点击链接后,他们将转到Facebook并返回该网站.但是,如果您打开一个新标签并转到Facebook,User1仍然会登录.

我怎样才能使这个链接起作用..发生了什么.这是api的错误还是什么?...

编辑:我继续使用有价值的用户ID加载和有效的访问权限来测试,但我还没有让注销链接工作.

php session facebook logout facebook-authentication

8
推荐指数
2
解决办法
2716
查看次数

使用ASP.NET Web API进行OAuth Facebook身份验证

所以我想这个问题有两个方面

  1. 将Facebook OAuth权限授予我的用户域实体(Facebook用户ID?或令牌?或两者或其他内容)时,我应该存储什么?

  2. 我是否可以通常使用DelegatingHandler保护ASP.NET Web API以读取访问令牌?

目前我的核心架构如下:

  • MyApp.Domain:我在类库项目中的域模型
  • MyApp.DataAccess:我的存储库和实体框架上下文
  • MyApp.WebAPI:用于RESTful服务的ASP.NET Web API项目

我的客户是

  • MyApp.Website:ASP.NET MVC 4网站
  • MyApp.iPhoneApp - 适用于iPhone的原生iOS应用程序
  • MyApp.AndroidApp - 原生Android应用程序

.net oauth-2.0 facebook-authentication asp.net-web-api

8
推荐指数
0
解决办法
3115
查看次数

使用适用于Android的Facebook SDK 3以额外权限登录

我按照"使用Facebook登录创建一个新的Android项目"部分的步骤访问https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/登录过程很好.因为我想使用本机Android按钮供用户登录,所以我将以下代码移动到原生Android按钮的View.OnClickListener()中稍微修改代码.以下是侦听器中的代码:

Session.openActiveSession(MainActivity.this, true, new Session.StatusCallback() {
    // callback when session changes state
    @Override
    public void call(Session session,SessionState state, Exception exception) {
        if (session.isOpened()) {                           
            // make request to the /me API
            Request.executeMeRequestAsync(session,new Request.GraphUserCallback() {

                // callback after Graph API
                // response with user object
                @Override
                public void onCompleted(GraphUser user,Response response) {
                    if (user != null) {
                        Toast.makeText(getApplicationContext(), "Hello " + user.getName() +" "+user.getId()+"!", Toast.LENGTH_LONG).show();
                    }
                }
            });
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

onActivityResult()和AndroidManifest.xml与教程相同

@Override
public void onActivityResult(int requestCode, int resultCode, …
Run Code Online (Sandbox Code Playgroud)

android facebook facebook-authentication facebook-android-sdk

8
推荐指数
1
解决办法
2万
查看次数

如何使用Facebook 3.0 SDK处理Android应用中的API错误?

我开发了一款使用Facebook SDK 3.0的Android应用程序.在developers.facebook.com上,它显示了很多API错误,最常见的是:

auth.androidauthorizeapp

auth.extendssoaccesstoken

有人能告诉我我能做些什么来解决这些错误吗?非常感谢您的帮助.谢谢.

android facebook-authentication facebook-android-sdk facebook-access-token

8
推荐指数
1
解决办法
2104
查看次数

必须提供"SignInScheme"选项

我正在创建一个仅使用Facebook/Google身份验证的ASP.NET 5 MVC 6应用程序.我也试图在没有整个ASP.NET身份的情况下使用cookie中间件 - 遵循这篇文章:https: //docs.asp.net/en/latest/security/authentication/cookie.html

所以我开始使用没有身份验证的空白应用程序然后添加了Microsoft.AspNet.Authentication.Cookies和Microsoft.AspNet.Authentication.Facebook NuGet包,以便采用非常简约的方法,其中我不包含任何我不包含的内容需要.

我将以下代码添加到Startup.cs中的Configure中,但我得到"必须提供SignInScheme选项"错误.知道我错过了什么吗?

app.UseCookieAuthentication(options =>
            {
                options.AuthenticationScheme = "MyCookieMiddlewareInstance";
                options.LoginPath = new PathString("/Accounts/Login/");
                options.AccessDeniedPath = new PathString("/Error/Unauthorized/");
                options.AutomaticAuthenticate = true;
                options.AutomaticChallenge = true;
            });

            app.UseFacebookAuthentication(options =>
            {
                options.AppId = "myFacebookAppIdGoesHere";
                options.AppSecret = "myFacebookAppSecretGoesHere";
            });
Run Code Online (Sandbox Code Playgroud)

c# cookies facebook-authentication asp.net-core-mvc asp.net-core

8
推荐指数
1
解决办法
5613
查看次数

Facebook javascript SDK FB.login无法在Facebook iFrame中运行

我们正在使用Facebook JavaScript SDK来验证我们的Facebook应用程序.该应用程序使用Canvas URL配置为http://facebook.elgifto.com/Home/Index/.以下是我们用于验证Facebook用户的代码.

    <script type="text/javascript">
          window.fbAsyncInit = function() {
              debugger;
                  FB.init({
                      appId: '<%= ViewData["AppId"].ToString() %>', // App ID
                      channelUrl: '<%= ViewData["ChannelUrl"].ToString() %>', // Channel File
                      status: true, // check login status          
                      cookie: true, // enable cookies to allow the server to access the session
                      xfbml: true,  // parse XFBML
                      oauth: true
                  });

              FB.Event.subscribe('auth.login', function(response) {
                  if (response.status === 'connected') {
                      // the user is logged in and connected to your
                      // app, and response.authResponse supplies
                      // the …
Run Code Online (Sandbox Code Playgroud)

javascript facebook facebook-javascript-sdk facebook-authentication

7
推荐指数
1
解决办法
2万
查看次数

无法在Facebook JS SDK中授权用户:"此授权代码已被使用." 或者如何获得新的授权令牌?

我正在尝试使用Facebook来验证用户身份.除了Ajax调用之外它工作正常.大多数时候它只发送旧令牌,我得到:

{"error":{"message":"This authorization code has been used.","type":"OAuthException","code":100}}
Run Code Online (Sandbox Code Playgroud)

所以我尝试做的是用每个ajax调用

FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            return  fn();
            ...
Run Code Online (Sandbox Code Playgroud)

这没用,所以我添加了:true作为getLoginStatus的参数以防止缓存:

FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            console.log('connected');
            fn();
        } else if (response.status === 'not_authorized') {
            console.log('not_authorized);
        } else {
            console.log('not_logged_in');
        }
    },true);
Run Code Online (Sandbox Code Playgroud)

大!除非它非常缓慢.难道我做错了什么?我可以在每次操作后获得新的令牌,所以我不需要在下一次之前等待吗?

谢谢你

facebook facebook-graph-api facebook-authentication facebook-login

7
推荐指数
1
解决办法
3万
查看次数

Facebook 和 Google 登录不适用于上传到 Firebase App Distribution 的 Android AAB 版本

已解决Firebase 故障排除页面已更新:

当您将 AAB 上传到 App Distribution 时,Google Play 会自动使用测试应用签名密钥证书对生成的 APK 进行签名。出现提示时,如果您想继续使用 API 提供商的第三方服务,则必须向 API 提供商注册您的应用程序。签名后,您可以在 Firebase 控制台中查看应用的测试证书。


自从我开始在 Firebase App Distribution 上上传 AAB 而不是 APK 以来,我注意到 Facebook 和 Google 身份验证不再起作用。

在我的 Firebase 的 Android 应用程序设置中,我已经添加了以下 SHA-1 指纹:

  • 调试(来自./gradlew signingReport
  • 发布(来自./gradlew signingReport
  • Google Play 商店(来自 Google Play Console > 发布 > 应用完整性)

我还在 Meta (Facebook) 开发者控制台中上传了相关的 Base64 哈希密钥。

一切都按预期工作,直到我开始上传 AAB 而不是 APK。例如,当我尝试使用 Facebook 登录时,会显示以下错误消息:

无效的密钥哈希。它们的密钥哈希 <key_hash> 与任何存储的密钥哈希不匹配。在https://developers.facebook.com/app/ <facebook_app_id>/配置您的应用程序密钥哈希

从这个密钥哈希中,我能够检索其关联的 SHA-1 指纹。将其添加到 Firebase …

android facebook-authentication google-oauth android-app-bundle firebase-app-distribution

7
推荐指数
1
解决办法
1188
查看次数