Proposed URL Changes

From Dreamwidth Notes
Revision as of 23:46, 6 March 2009 by 76.249.173.155 (Talk)

Jump to: navigation, search

This page discusses the proposed rearchitecture of the URLs used by the site.

Goal

Modern web software has standardized on using simpler URLs: removing unnecessary cruft, using simple verbs/nouns to define what you're doing, etc. LJ has not kept up with these changes, and we have a good chance with DW to do so.

Note: we will continue to support old-style URLs, so we do not break links and muscle memory. We will also keep extensions such as .jpg and .mp3 for content that isn't HTML. However, canonical URLs will be new-style.

Journal Space

User content should always be delivered on the subdomain that the user owns. For the purpose of this discussion we will use USER to indicate where the user's account name will be.

Here's a sample of proposed URLs:

http://USER.dreamwidth.org/entry/12            # user's 12th entry
http://USER.dreamwidth.org/entry/12/edit       # edit entry #12?
http://USER.dreamwidth.org/entry/12/delete     # delete entry #12?
http://USER.dreamwidth.org/entry/12/comment   # comment on entry #12?
http://USER.dreamwidth.org/comment/1335        # comment 1335 to the account
http://USER.dreamwidth.org/comment/1335/screen # screen this comment?
http://USER.dreamwidth.org/comment/1335/reply  # reply to this comment?
http://USER.dreamwidth.org/media/133.jpg       # some image upload
http://USER.dreamwidth.org/media/193.mp3       # voice post
http://USER.dreamwidth.org/post                # post to this account
http://USER.dreamwidth.org/profile             # user's profile
http://USER.dreamwidth.org/wiki                # user's wiki
http://User.dreamwidth.org/wiki/FooBar         # wiki node

Keep in mind that all action URLs - i.e., /delete, /edit, /screen, etc - will present the user with a confirmation page. No action will be taken via GET.

However, if we receive a valid POST (i.e., via JavaScript/AJAX) then we can take the action. (This simplifies many, many things.)

Site Space

No examples yet.