我已经完成了使用Ember JS的任务但是我无法找到任何文档或方向指出自己从API URL获取提要 - 就像你可以用PHP中的Curl一样
我不这样做,我可能不得不将它存储在Ember Data中。
有人能给我一个简短的例子说明我应该做什么 - 这会很棒
答案 0 :(得分:3)
EmberJS与您在Curl或PHP中联系API的方式完全不同。
对于初学者 - 在emberjs中,您直接从客户端联系API(这很重要,因为有些情况下人们使用PHP等后端代码来调用具有安全的组织级API令牌的第三个API。这种类型事情不应该由ember或单页网页应用程序处理。将它保存在你的后端代码中!
现在来看看有关余烬的真正令人兴奋的部分--Ember Data。
Ember Data本身就是一个相当复杂的主题。为了简化,ember将数据存储在所谓的数据存储或DS中。 DS API is rather large and very much worth getting familiar with.商店由Models支持,这些模型甚至可以形成与有向图形数据库非常相似的关系。
与我所知道的所有余烬一样,商店的运作遵循约定优于配置的原则。因此,商店通过使用余烬RESTAdapter从符合条件的RESTful API中最有效地接收数据。但是,RESTAdapter API是Ember Adapter的扩展,可以轻松定制以满足您的需求。我没有提到RESTAdapter而没有强调使用序列化程序的重要性。 Serializers是他们的名字所暗示的不可或缺的一部分 - 将来自服务器的数据序列化(并规范化)为符合适配器所期望的约定的JSON可解析对象。
根据我的经验,我通常需要在RESTAdapter或Serializer级别进行某种自定义 - 更常见的是后者而不是前者。我还强烈建议您完全熟悉Ember Data和Data Store,因为所有这些组合为您提供了巨大的功能,它带来了与REST API高效集成的新的有趣的设计范例。
所以唯一剩下的问题是 - 那么我何时才能调用API?嗯 - 这是很酷的部分。在配置适配器,序列化,设置模型时,你完成了整个shebang。在整个webapp中,您现在可以依赖于连接到ember数据存储的模型的使用 - 而ember将负责其余的工作(例如知道何时进行API调用)。
无论如何,我不想让粉丝漫无边际地絮絮叨叨。在他们的网站上查看有关模型主题的优秀文档。另外,看看ember-cli吧!如果你刚刚开始使用Ember,这肯定是要走的路。不要指望这是一个短暂的学习曲线 - 余烬有一个陡峭的学习曲线,你正在踩着它的任务进入它的核心。你会发现,一旦你绕过商店的使用,这是一个令人难以置信的授权工具。
祝你工作顺利!