Version 1 (modified by Itamar Turner-Trauring, 9 years ago) (diff)


This plan describes the plan alluded to in comments of #5152 to improve the web resource model.

The problems:

  1. No streaming uploads.
  2. No Deferred support in render(), and adding it wouldn't be backwards compatible.
  3. getChild makes it hard to conume multiple path segments at once. The current API also assumes the body is present (see problem 1).

The solution is a new resource model, re-using the existing HTTP server. Old resources will be able to be children of new resources. A series of tickets will do the following:

  1. Minimal new resource traversal API (#5379). Traversal will not have access to body.
  2. Add support for streaming bodies.

At that point a whole bunch of improvements can be done in parallel:

  • render_GET etc. dispatch, maybe OPTIONS as well.
  • Parsing POSTed forms, including file uploads.
  • Documentation.
  • Compatibility with old resource model.