我目前正在计划为ios和android创建一个移动应用程序。
该应用程序将允许最终用户管理和查看其项目的进度。(网络创建公司)。
该应用程序将具有:
- 项目管理(多个)
- 查看进度
- 查看任务
- 查看营业时间
- 查看文件
- 查看消息
- 登录/注销表单 + 个人资料/编辑个人资料部分
- 发送/回复消息
- 添加对任务和文件的评论
问题是:使用 Zend 框架创建 API(Restful 或其他)的最佳方式是什么?
该 API必须并且将被集成到定制的项目管理系统和 MySQL 数据库中。
我只是在研究 PHP API(无论 API 是用于移动平台还是其他网络),在 SOAP 和 REST 之间实现之后,我选择了一个 RESTful API,我可以推荐它......
Zend Framework 具有用于上述两种方法的组件,但 REST 在 comp 中更容易且更易于理解。用肥皂...
您必须考虑的一件事是日志记录,您可以使用 HTTP Auth 或 OAuth(HTTP 认证更容易),但根据我的说法,更好的方法是为您的用户生成唯一的 API KEY(每个用户都应该有自己的 KEY),这KEY 确保您可以识别用户并且安全风险最小,因为用户不必在 HTTP 请求中发送登录名和密码(安全风险),并且如果 KEY 被 WIFI 或基础设施捕获,黑客不会让用户登录到 Web 应用程序,仅适用于可能不是主要 Web 应用程序提供的所有功能的 API。
如果你为你的 KEY 设置了一些时间期限或为 KEY 设置了 IP 限制,那么你可以让它更安全:)
最后的一些提示:将 API 实现为新的分离 ZF 模块。
到目前为止我注意到的最好的东西之一是http://getfrapi.com/
它利用了从 Zend 到 Pear 的所有东西。也许您应该查看视频http://www.youtube.com/watch?v=vJVQi7ZFSaQ