Symfony 2项目,包含API的外部数据

时间:2015-01-24 19:01:40

标签: symfony sugarcrm

我想将新的symfony 2项目与现有的CRM REST API连接起来。所以我希望用户在我的项目中看到他们的CRM数据。 从外部API获取实体(用户,合同,票证等)的数据的最佳方法是什么?

我对这个框架并不熟悉,但这是我的想法:

  1. 创建实体
  2. 为CRM的外部API请求创建服务 3.?将实体与CRM中的相应记录连接?
  3. 创建缓存系统,以便每1或2小时更新一次数据。
  4. 有没有更好的方法,我如何实现第3点?

    谢谢和最好的问候

    的Stefan

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点:

  1. 最简单的方法是不在Symfony中导入数据,而是从CRM获取Ajax请求并将其添加到Symfony应用程序中。你可以使用Backbone或ReactJs或AngularJs等。在这种情况下,Symfony将管理除CRM中的数据之外的所有内容

  2. 另一种方法:为要导入的所有数据类型创建实体。创建一个服务,管理从CRM导入的数据。创建一个将运行此服务并将其附加到cronjob的命令。在导入服务中,使用Guzzle从您的CRM获取数据并使用JMSSerializerBundle将导入的数据转换为实体。您可以使用此捆绑包:https://github.com/misd-service-development/guzzle-bundle执行此作业,它将Guzzle集成到Symfony和JMSSerializerBundle。

  3. 希望有所帮助