许多描述如何设置RESTfull api的教程都提到使用htaccess文件来重写url。 说实话,我不太明白这有用的地方,至少在我的情况下。 让我解释一下。我正在建立一个约会网络应用程序。用户在数据库中存储约会 - 当然这里的意图是通过REST完成。
日历显示在名为calendar.php的页面中。从用户到那里开始,GET操作由骨干发起到名为events.php的页面:
var Events = Backbone.Collection.extend({
model: Event,
url: 'events.php'
});
Events.php假设有代码相关的数据库查询 - 我想假设,因为我还没有编写任何代码。要编写应用程序我在这里研究tutorial。
所以这是我的两个问题:
答案 0 :(得分:0)
应用程序的“REST”接口绝对没有理由需要mod_rewrite或htaccess。
通常只有在您想要追溯重写时才有用。旧的到新的URL(因为有人搞砸了!)。
人们使用mod_rewrite进行各种废话,有时候堆栈的核心部分已经这样做了 - 比如将/ foo映射到/foo.php(mod_negotiation)或坚持他们的实现读取查询字符串但是他们的URL是看起来像PATH_INFO。
答案 1 :(得分:0)
Backbone模型/集合使用AJAX和RESTful资源从服务器获取和设置数据。例如,collection.fetch()
会发送GET events.php
来获取所有项目。 model.save()
会发送POST events.php
或PUT events.php/1
(其中1
是模型的ID
)。此外,当您只需从服务器获取一个特定模型数据时,它将发送GET events.php/1
(其中1
是模型的ID
)。因此,您可能根本不使用.htaccess
文件来处理简单请求。您可以从ID
中的$_SERVER['PATH_INFO']
变量获取并PHP
。