Php 我应该如何为移动应用程序创建API(需要身份验证) 背景
所以在过去的一周里,我一直在研究API,并且一直在阅读有关概念和编程的书籍 目前,我有一个网站,它是用PHP编程的,使用了一个流行的叫做Laravel的框架。该网站有一个用户数据库,用户可以登录到我的网站上的仪表板,一切工作,因为我希望它为我的网站方面 现在,在我的下一个业务项目中,我将重点创建我的移动应用程序(IOS和Andriod)。我需要这些移动应用程序能够通过应用程序UI登录(而不是通过回调URL重定向到我的站点),以便它们能够查看和管理仪表板 我希望在应用程序中使用的身份验证和授权方法类似于Php 我应该如何为移动应用程序创建API(需要身份验证) 背景,php,api,laravel,authentication,api-design,Php,Api,Laravel,Authentication,Api Design,所以在过去的一周里,我一直在研究API,并且一直在阅读有关概念和编程的书籍 目前,我有一个网站,它是用PHP编程的,使用了一个流行的叫做Laravel的框架。该网站有一个用户数据库,用户可以登录到我的网站上的仪表板,一切工作,因为我希望它为我的网站方面 现在,在我的下一个业务项目中,我将重点创建我的移动应用程序(IOS和Andriod)。我需要这些移动应用程序能够通过应用程序UI登录(而不是通过回调URL重定向到我的站点),以便它们能够查看和管理仪表板 我希望在应用程序中使用的身份验证和授权方法
- 客户端要求用户通过UI登录
- 用户输入凭据
- 客户端发送登录到API的请求
- API检查凭据是否正确
- API创建一个令牌,该令牌存储在与用户ID链接的令牌数据库中
- API返回200 OK,带有json响应或类似的内容
{“代币”:“OLS25usJIay81hdy81”,“到期日”:3/06/2016 14:00}
- 客户机记住令牌和到期日
- 每当用户/客户机发出请求,例如
时,它就会发送带有请求的令牌(可能通过http头?)api/v1/mystuff/orders
- API验证令牌,获取用户ID并查找用户订单
- 我应该使用什么来创建API(需要是PHP,最好是集成了laravel)
- 有哪些好的资源可以帮助我编写API
- 你有什么建议/改变吗
- 用户名/密码身份验证
- 令牌授权
- 通过应用程序用户界面登录(不在我的网站上进行回调)
- 我的网站有SSL证书
如果您需要帮助,您可以从Laracast观看本系列,这需要订阅,但绝对值得。谢谢,我将查看所有这些资源并与您联系!谢谢,我刚刚看了一些教程和文档。它非常适合我的需要!太好了,很高兴我能提供帮助。@TheAllen jwt auth将为每个登录用户生成一个令牌,使用寿命为一小时,对于angular js这样的web应用程序也可以,但我应该如何处理移动应用程序?我应该一次又一次地登录用户以获取新的令牌吗?当然,这对于移动应用来说不是一个好主意!你的想法是什么?@AliSherafat是的,我认为这对移动应用不是个好主意。通常,在移动应用程序中,用户登录一次,直到注销为止,即使应用程序关闭或一周后打开。因此,您应该将此令牌保留在数据库中,并且会话不应该过期,就像在web应用程序上一样。