我正在使用金字塔和Cornice来创建供Backbone.js应用程序使用的应用程序接口。我当前的代码可以很好地处理GET和POST请求,但在接收PUT请求时返回404错误。我相信这是因为Backbone将它们作为http://example.com/api/clients/ID发送,其中ID是相关对象的id号。
我的Cornice设置代码是:
clients = Service(name='clients', path='/api/clients', description="Clients")
@clients.get()
def get_clients(request):
...
@clients.post()
def create_client(request):
...
@clients.put()
def update_client(request):
...Cornice似乎只注册了路径/api/clients,而没有注册/api/clients/{id}。我如何才能使两者都匹配呢?
发布于 2012-10-23 22:06:46
documentation给出了同时具有单独路径(/users/{id})和对象路径(/users)的服务的示例。这对你有用吗?
@resource(collection_path='/users', path='/users/{id}')快速浏览一下code for the resource decorator就会发现,它主要创建了两个Service:一个用于对象,另一个用于集合。您的问题可能可以通过添加另一个Service来解决:
client = Service(name='client', path='/api/clients/{id}', description="Client")https://stackoverflow.com/questions/13026694
复制相似问题