问题标签 [sign-in-with-apple]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
501 浏览

ios - FirebaseUI 在“使用 Apple 登录”时不提供“displayName”

我最近appleAuthProvider()在 iOS 上使用 Swift 添加了 FirebaseUI。Apple我在 Firebase 控制台中启用了登录方法,并添加了Sign in with AppleCapability。

到目前为止一切都很好,但是当authUI(_ authUI: FUIAuth, didSignInWith authDataResult: AuthDataResult?, error: Error?)从委托调用时,来自 的用户authDataResult和来自的用户没有设置Auth.auth().currentUserdisplayName,或者nil

你们有解决方案或解决方法使其工作吗?Firebase 仅提供来自用户的电子邮件,这displayName对我来说是必需的。

我会让下面的代码。

这里是firebase委托方法。

0 投票
1 回答
78 浏览

firebase-authentication - Apple 登录 - 检索姓名和电子邮件

从文档中我可以发现,只有在第一次登录我的应用程序时,用户名和电子邮件才会与凭据一起返回。所以我继续将这些保存到我的后端。

现在,如果用户决定删除他的帐户,我会从我的后端删除他的所有数据(这可能是用户希望我做的事情。根据某些隐私法,这不是我必须做的事情吗?)。

现在,如果用户决定再次改变主意并安装该应用程序,我将无法获取用户名和电子邮件吗?不管我做什么?还是我错过了某种 user.ultimateSignoutAndDelete(for: .ever) 以便能够在他下次登录时获取用户数据?

也许这个场景看起来有点构建,但是在测试苹果登录时你会立即偶然发现。

0 投票
0 回答
97 浏览

ios - 我们如何在目标 C 中将标题“Sign in with Apple”更改为“Apple”?

我想在我的目标 C 项目中使用 Apple 登录,但要求是将标题更改为“Apple”而不是“使用 Apple 登录”。有什么办法可以改变“ASAuthorizationAppleIDButton”的标题吗?

0 投票
1 回答
6485 浏览

android - Android Sign in with apple and firebase flutter

我正在使用 sign_in_with_apple 并且我已经为 ios 工作了登录,但 android 组件不工作。

我已经查看了文档和问题,但没有明确的答案。https://github.com/aboutyou/dart_packages/tree/master/packages/sign_in_with_apple

我被困在这个插件的部分文档中说:

在您的服务器上的 Sign in with Apple 回调中(在 WebAuthenticationOptions.redirectUri 中指定),使用以下 URL 安全地重定向回您的 Android 应用程序:

intent://callback?${PARAMETERS_FROM_CALLBACK_ BODY}#Intent;package=YOUR.PACKAGE.IDENTIFIER;scheme=signinwithapple;end

PARAMETERS FROM CALLBACK BODY 应填充您在端点上从 Apple 服务器收到的 urlencoded 正文,并且应该更改 package 参数以匹配您的应用程序的包标识符(如在 Google Play 商店上发布的那样)。保持回调路径和 signinwithapple 方案不变。

此外,在客户端处理传入凭据时,请确保仅在您自己的服务器验证传入代码参数后才覆盖用户的当前(访客)会话,这样您的应用就不会受到恶意传入链接的影响(例如日志记录当前用户)。

上面写着的部分是: PARAMETERS FROM CALLBACK BODY 应该填充您在端点上从 Apple 服务器收到的 urlencoded 正文。我不确定如何获取它并正确格式化redirectURL 的PARAMETERS_FROM_CALLBACK_BODY 部分以使其适用于Android。

0 投票
0 回答
233 浏览

ios - 为什么在Sign in with Apple中有“nonce”时会有“state”

在 iOS 14 中,Apple 在使用 Sign in with Apple 时引入了一个名为“state”的变量。 文档。

我们可以用它来阻止重放攻击。State 和 Nonce 的区别在于我们可以在客户端检查 state 以确保它不是重复响应,而 Nonce 将用于我们的后端。我的问题是,当我们可以在客户端和后端都使用 Nonce 时,为什么我们会有这个状态变量?

0 投票
2 回答
934 浏览

javascript - 使用 Apple JS 问题签名

我在使用 Apple 登录时遇到了一个问题。成功登录后弹出窗口关闭但作为回应我得到

{"isTrusted": false} 想知道我错过了什么

我已经在重定向 URL 中添加了子域和域详细信息,并且我的重定向 URL 与打开弹出窗口的页面相同。

这是我的代码以获取更多详细信息

我在按钮单击时启动此过程

并通过侦听器收听响应

知道 isTrusted false 是什么意思吗?

0 投票
2 回答
1966 浏览

ios - 如何仅设置苹果徽标图像以使用苹果按钮登录

我正在开发一个应用程序,其中提供了三个登录选项,例如 facebook、google 和 apple。我需要为所有三个设置相同的设计。我的苹果按钮登录是矩形的,我想知道我可以更改该按钮的设计以及如何更改。我需要让它只有苹果标志而不是文字。那么如何将苹果徽标图像设置为ASAuthorizationAppleIDButton。我在以下链接上阅读了有关苹果设计的信息,但没有提及如何将图像设置为按钮。 https://developer.apple.com/design/human-interface-guidelines/apple-pay/overview/buttons-and-marks/

0 投票
2 回答
627 浏览

ios - 使用苹果按钮登录不触发目标功能

我有一个最小目标为 iOS 11 的应用程序。但是,我需要支持 Sign In With Apple,因此我将使用 Apple 按钮添加到我的堆栈视图中,如下所示:

这成功地将按钮添加到我的堆栈视图中。但是,当我点击它时,它不会触发我的 handleSignInWithApple 函数。为什么?

更新

只有当我稍微拖动手指并松开它时,它才会开火。如果我只是点击,它不起作用!为什么?

0 投票
1 回答
205 浏览

ios - 如何实现苹果登录到iOS12兼容项目

我尝试在支持 iOS12 的 iOS 项目中实现 Sign in With Apple。由于 AuthenticationServices 相关声明仅从 iOS13 有效,我需要使用#available(iOS 13.0, *)... 分离 iOS13 或更高版本和 iOS12 的代码并吹。

我无法将 ASAuthorizationControllerDelegate 与 iOS12 或更低版本分开。它似乎#available(iOS 13.0, *)... 只能在方法中使用,但不能直接用于 swift 文件,所以我不能将我的 LoginViewController 与 ASAuthorizationControllerDelegate 仅用于 iOS13 或更高版本。

有什么帮助吗?

0 投票
1 回答
1418 浏览

ios - 转换来自 Sign in with Apple 的令牌请求从 Django REST 社交身份验证返回 HTTP 400

我根据下面的文章实现了使用 Apple 后端登录到 Django

当我从 iOS App 向 Django 发送转换令牌请求时,它返回 HTTP 400。

在同一个项目(iOS 应用程序和 Django 后端)中,我还实现了 Facebook 身份验证,这工作正常。

我的猜测是来自 iOS 应用程序的请求是可以的,但 Django 上的一些设置是错误的,但我不确定。

我做错了什么,我怎样才能让它发挥作用?


Django 代码

Django settings.py,用苹果相关代码登录

Django settings.py,其他代码可能与问题有关(主要是Facebook Auth相关)

Django 的自定义视图返回令牌



iOS 代码

从 Sign in with Apple 中检索 JWT 的部分

发送给 Django 的参数