Currently blobs use a net protocol handler. We're trying to move away from that API as part of the network service effort, since networking would run in a separate process. Ideally blobs code implements a URLLoaderFactory, and either the renderer talks to it directly or blob system registers its scheme with network service which redirects blob:// requests to it. More background: https://docs.google.com/a/chromium.org/document/d/1_ROmusFvd8ATwIZa29-P6Ls5yyLjfld0KvKchVfA84Y/edit?disco=AAAABKKsfaI&usp=comment_email_document https://docs.google.com/a/chromium.org/document/d/18MPrKYDuRCov_NPRj_KAXaSu4rBwY3r6YqyVAroEwkg/edit?disco=AAAABJnGR5s&usp=comment_email_document
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9354af8d90801db9a5fa621f969dcbf3b185e979 commit 9354af8d90801db9a5fa621f969dcbf3b185e979 Author: jam <jam@chromium.org> Date: Sat Jun 03 21:59:41 2017 Add support for reading blobs when using the network service. For now this only handles frame requests. A future change will add support BUG= 715677 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2906543002 Cr-Commit-Position: refs/heads/master@{#476903} [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/BUILD.gn [add] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/blob_storage/blob_url_loader_factory.cc [add] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/blob_storage/blob_url_loader_factory.h [rename] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/blob_storage/blob_url_unittest.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/frame_host/render_frame_host_impl.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/loader/navigation_url_loader_network_service.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/loader/test_url_loader_client.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/storage_partition_impl.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/storage_partition_impl.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/url_loader_factory_getter.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/url_loader_factory_getter.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/webui/web_ui_url_loader_factory.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/browser/webui/web_ui_url_loader_factory.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/common/BUILD.gn [rename] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/common/net_adapters.cc [rename] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/common/net_adapters.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/network/BUILD.gn [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/network/DEPS [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/network/url_loader_impl.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/content/test/BUILD.gn [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/storage/browser/BUILD.gn [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/storage/browser/blob/blob_url_request_job.cc [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/storage/browser/blob/blob_url_request_job.h [modify] https://crrev.com/9354af8d90801db9a5fa621f969dcbf3b185e979/testing/buildbot/filters/mojo.fyi.network_content_browsertests.filter
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91 commit 188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91 Author: jam <jam@chromium.org> Date: Wed Jun 07 03:56:24 2017 Add support for blob urls for subresources. BUG= 715677 Review-Url: https://codereview.chromium.org/2925903004 Cr-Commit-Position: refs/heads/master@{#477539} [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/browser/blob_storage/blob_url_loader_factory.cc [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/browser/blob_storage/blob_url_loader_factory.h [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/browser/renderer_host/render_process_host_impl.cc [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/browser/renderer_host/render_process_host_impl.h [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/browser/url_loader_factory_getter.cc [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/common/BUILD.gn [add] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/common/renderer_host.mojom [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/public/app/mojo/content_browser_manifest.json [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/renderer/render_frame_impl.cc [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/renderer/render_thread_impl.cc [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/content/renderer/render_thread_impl.h [modify] https://crrev.com/188f19f9e26e879ac7aab7ac4bc54ba8cc57eb91/testing/buildbot/filters/mojo.fyi.network_content_browsertests.filter
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fdf52023f531d3bb73459e021a243d5aae076de7 commit fdf52023f531d3bb73459e021a243d5aae076de7 Author: jam <jam@chromium.org> Date: Tue Jun 13 23:56:36 2017 Run BlobURLRequestJobTest tests with BlobURLRequestJob and BlobURLLoader. BUG= 715677 Review-Url: https://codereview.chromium.org/2940603003 Cr-Commit-Position: refs/heads/master@{#479212} [modify] https://crrev.com/fdf52023f531d3bb73459e021a243d5aae076de7/content/browser/blob_storage/blob_url_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0a93a93d8be209f9f6143be2644f42dec4b2357a commit 0a93a93d8be209f9f6143be2644f42dec4b2357a Author: John Abd-El-Malek <jam@chromium.org> Date: Tue Aug 01 01:36:21 2017 Enable blob layout tests with network service. BUG= 715677 TBR=mek@chromium.org Change-Id: Iae3a3d1eaaaf3b24c3d1e828c38cd06137dca991 Reviewed-on: https://chromium-review.googlesource.com/595190 Reviewed-by: John Abd-El-Malek <jam@chromium.org> Commit-Queue: John Abd-El-Malek <jam@chromium.org> Cr-Commit-Position: refs/heads/master@{#490832} [modify] https://crrev.com/0a93a93d8be209f9f6143be2644f42dec4b2357a/third_party/WebKit/LayoutTests/FlagExpectations/enable-features=NetworkService
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/478a931a8ef1833bf23100fab0a3035f1f317d9d commit 478a931a8ef1833bf23100fab0a3035f1f317d9d Author: Matt Menke <mmenke@chromium.org> Date: Tue Aug 01 17:17:50 2017 Disable http/tests/fetch/serviceworker/thorough/scheme-blob-base-https-other-https.html This was enabled in https://chromium-review.googlesource.com/c/595190, but it's failing on the bots. TBR=jam@chromium.org NOTRY=true Bug: 715677 Change-Id: I5afaf63f79c7dba3ad5716655fb18bc09655d60d Reviewed-on: https://chromium-review.googlesource.com/596189 Commit-Queue: Matt Menke <mmenke@chromium.org> Reviewed-by: Matt Menke <mmenke@chromium.org> Cr-Commit-Position: refs/heads/master@{#491032} [modify] https://crrev.com/478a931a8ef1833bf23100fab0a3035f1f317d9d/third_party/WebKit/LayoutTests/FlagExpectations/enable-features=NetworkService
Apologies, applied the wrong component in bulk.
Setting Internals>Services>Storage to all children of issue 611935
Comment 1 by dmu...@chromium.org
, Apr 27 2017