On Mon, Jun 30, 2014 at 3:57 PM, Anne van Kesteren <[email protected]> wrote:
> On Mon, Jun 30, 2014 at 10:48 PM, Arun Ranganathan <[email protected]> > wrote: > > They are! That is, at the time the method URL.createObjectURL(blob) is > > called on blob, that method adds an entry to the Blob URL Store: > > http://dev.w3.org/2006/webapi/FileAPI/#add-an-entry > > > > I’ve only defined identifier extraction for use with adding an entry. Is > > that wrong? > > It seems like you could define identifier creation, use that, use the > return value to add an entry, and then return "blob:" + the return > value. Creating a URL first and then parsing it again to extract > something seems needlessly complicated. > Why would the identifier not just be the blob URL itself? The spec currently makes the identifier just the scheme data, which seems much more complex than it needs to be. revokeObjectURL should simply be "Remove the entry from the Blob URL Store for URL." If we want to allow revoking URLs that have a fragment attached it'd still need to strip it off; Firefox does this, but Chrome doesn't. Also, both Chrome and Firefox treat the entire URL as case-sensitive, eg. "Blob:..." won't revoke the URL, or uppercasing the hostname portion in Chrome. Using the whole URL as the identifier makes this easy to do. "Subsequent attempts to dereference url must return a network error" should be removed. That should already be the consequence of unregistering the URL, so this is a redundant requirement. -- Glenn Maynard
