OAuth 和推送 Express.js
OAuth and Push with Express.js
我正在尝试使用 Express.js 构建 REST 服务器。服务器将由移动本地客户端以及 HTML/JS Web 客户端使用。我希望 HTML/JS 网络客户端仅作为静态文件提供,并且会使用 REST api 进行交互。
我有两个问题:
1) 如何将 OAuth2 身份验证集成到服务中,以便我可以使用 Facebook、Google 等登录。我希望移动客户端和 Web 客户端使用相同的 API 集。
2)如何向移动客户端发送推送通知?专门针对 Apple 移动客户端。
谢谢。
对于移动客户端,他们通常会使用他们的移动 SDK 从 OAuth 提供商(例如 google)请求访问令牌等。
然后他们会向您发送此访问令牌。您可以采用两种方式 - 使用提供者访问令牌直接验证每个请求(有点好,但不那么可靠)或使用提供者访问令牌向移动应用程序授予您自己的身份验证令牌(或会话、cookie 等)你可能正在使用)。
第二种方法,我认为更通用。
以及怎么做? Passport.js
有用于 google 的模块。通常他们会在您的应用中插入一些端点,例如:
/auth/google
和
/auth/google/callback
现在,第一个通常是您用来在 Web 或移动 Web 项目上启动外部身份验证过程的。 callback
url 是他们稍后用访问令牌击中你的地方 - 这就是你将在你的移动应用程序中使用的 - 他们获得令牌,然后击中你的 /auth/:provider/callback
端点。
我正在尝试使用 Express.js 构建 REST 服务器。服务器将由移动本地客户端以及 HTML/JS Web 客户端使用。我希望 HTML/JS 网络客户端仅作为静态文件提供,并且会使用 REST api 进行交互。
我有两个问题: 1) 如何将 OAuth2 身份验证集成到服务中,以便我可以使用 Facebook、Google 等登录。我希望移动客户端和 Web 客户端使用相同的 API 集。 2)如何向移动客户端发送推送通知?专门针对 Apple 移动客户端。
谢谢。
对于移动客户端,他们通常会使用他们的移动 SDK 从 OAuth 提供商(例如 google)请求访问令牌等。
然后他们会向您发送此访问令牌。您可以采用两种方式 - 使用提供者访问令牌直接验证每个请求(有点好,但不那么可靠)或使用提供者访问令牌向移动应用程序授予您自己的身份验证令牌(或会话、cookie 等)你可能正在使用)。
第二种方法,我认为更通用。
以及怎么做? Passport.js
有用于 google 的模块。通常他们会在您的应用中插入一些端点,例如:
/auth/google
和
/auth/google/callback
现在,第一个通常是您用来在 Web 或移动 Web 项目上启动外部身份验证过程的。 callback
url 是他们稍后用访问令牌击中你的地方 - 这就是你将在你的移动应用程序中使用的 - 他们获得令牌,然后击中你的 /auth/:provider/callback
端点。