如何在Netlify身份上存储自定义用户数据?

时间:2018-09-04 21:04:52

标签: authentication netlify

在过去三个月中,我一直在使用Netlify来存储我的应用程序(前端和后端)的100%。到目前为止,一切都很好。

现在唯一的问题是,我需要为每个用户存储一个自定义属性(例如电话号码),并且Netlify Identity显然不支持此属性(仅电子邮件,姓名和角色https://www.netlify.com/docs/identity/)。

我不想为了整个细节而将整个应用程序迁移到另一个托管服务提供商(实际上,我不能,这是给客户的,我只是没有时间),因为它可以很好地工作,但同时我也需要它。

您能想到任何解决方法吗? “骇客”越少越好,但是我知道我超越了Netlify Identity的预期用途。

1 个答案:

答案 0 :(得分:2)

有很多方法可以做到这一点,所以现在我将讨论两种普遍适用的方法:

  • 最“通用”的大概是使用lambda函数:https://www.netlify.com/docs/functions。这使您可以运行动态代码,例如“存储到托管在其他地方的数据库”或“通过电子邮件发送给我们的办公室经理以更新电子表格”,甚至“提交到封闭的git repo以便在代码中可用”(最后一个可能是最坏的做法,但有可能)。您可以类似地使用一个函数来读取该数据,而无需暴露API令牌(代码示例:https://github.com/netlify/code-examples/tree/master/function_examples/token-hider

  • 您可以通过提交表单(https://www.netlify.com/docs/form-handling)来收集数据。我可能会使用zapier.com来接收表单提交的通知(https://www.netlify.com/docs/form-handling/#notifications)。 Zapier当然可以连接到地球上的几乎所有物体:)。如果要在用户界面中显示数据,则要取回数据还有些困难,但是如果需要连接到一些私有数据存储以将其取出,则可以使用上述功能。或者对于MVP,只是不显示它,只允许人们输入/更新它;)