David Bear
David.Bear at asu.edu
Fri Jan 4 13:11:19 EST 2008
On Fri, Jan 04, 2008 at 04:32:14AM -0500, Deron Meranda wrote: > > def handler( req ): > # Extract the resource name (the CCCC portion of the URL): > uripath = [p for p in req.uri.split('/') if p] > if len(uripath) != 2 or uripath[0] != 'descriptor': > raise apache.SERVER_RETURN, apache.HTTP_NOT_FOUND > resource_name = uripath[-1] > > # Now figure out what we want to do to the resource > if req.method == 'GET': > try: > content = resource_database[resource_name] > except KeyError: > raise apache.SERVER_RETURN, apache.HTTP_NOT_FOUND > req.content_type = 'application/octet-stream' > req.write( content ) > elif req.method == 'PUT': > content = req.read() > resource_database[resource_name] = content > elif req.method == 'DELETE': > del resource_database[resource_name] > else: > raise apache.SERVER_RETURN, apache.HTTP_METHOD_NOT_ALLOWED > > return apache.OK > WOW. Thanks. This is a great descriptions on REST and the most understandable I've looked at. The code is the teacher. -- David Bear phone: 602-496-0424 fax: 602-496-0955 College of Public Programs/ASU University Center Rm 622 411 N Central Phoenix, AZ 85007-0685 "Beware the IP portfolio, everyone will be suspect of trespassing"
|