我在ionic 4上创建了一个认证页面,我需要整合google auth来使这个过程更容易。
但是我不想把用户存储在firebase上,因为我有一个后台在ruby on rails 5上的应用。
如何整合google auth与rails api?
如果你有后端建立在rails中,你将需要验证google auth首先在ionic应用程序中,在这里解释。https:/ionicthemes.comtutorialsaboutionic-google-login#authentication-options。 你有三个选择,你的是 手工制作的方式(使用自己的APIBackend)。.
从google获得授权令牌后,你必须通过你的api发送它并验证令牌。为了验证令牌,使用gem google-id-token
而你的控制器应该是这样的
token = params[:token]
validator = GoogleIDToken::Validator.new(expiry: 1800)
begin
payload = validator.check(token, client_id)
user_id = payload['sub']
email = payload['email']
picture = payload['picture']
name = payload['name']
head :ok
rescue GoogleIDToken::ValidationError => e
head 404
end
关于这块宝石的更多信息 https:/github.comGOOGLEGOOGLE-ID-token。
另外,对于client_id,它应该在你在google控制台创建一个应用程序时生成。