Storage Inspector doesn't work when in private browsing mode
Firefox 47.0 32bit on Windows 7 64bit
The Storage Inspector doesn't seem to work in private browsing mode. I don't know where to report this
To replicate:
1. Set "Firefox Settings >> Privacy >> History" to "Never remember" or "Always use private browsing"
2. Open the Storage Inspector (may need to be enabled in dev tools: see https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector)
3. Notice that no matter which site you go to, no storage data is displayed. For instance go to google.com and notice that no cookie is shown!
Storage still works behind the scene; it's just not shown in the Storage Inspector. It's as if the inspector is looking for content on the drive (where storage is usually kept) instead of in RAM (where storage is kept in private browsing mode) and as a result finding no content.
Exiting private browsing mode and restarting the browser brings things back to normal. I first noticed the problem immediately after upgrading from FF 46 to 47.
I need help reporting this to the people who need to see it.
所有回覆 (14)
correct link to Storage Inspector wiki: https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector
I don't know about the Storage Inspector, but if you are in Private Browsing mode, nothing is recorded.
I think you're right that Firefox doesn't show cookies of private windows under Storage, just as it doesn't show them in the Cookies dialog. I suspect this is by design, but haven't seen a confirmation one way or the other.
The place I usually look for those cookies is the request and response headers on the Network Monitor panel. (Example screen shot attached.)
Sure stuff is recorded, just in RAM not on the drive. Cookies still work; they're just forgotten when you close the browser because they were stored in RAM.
Anyway, the Storage Inspector worked well to show cookies etc... even in private browsing mode until I updated to FF 47 yesterday. I noticed it right away because I always browse in private mode and I usually have the Storage Inspector open.
@jscher, if hiding cookies in the Storage Inspector in private browsing (PB) were by design, I think one of the following would be true:
- Storage Inspector wouldn't show cookies in PB on previous versions of FF (it did)
- There would be a note about limitations in PB on the Storage Inspector page at https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector (there isn't)
Cookies aren't really my primary concern though. The reason it's a problem is that I rely on Storage Inspector to look at the contents of localStorage, sessionStorage and IndexedDB while I test websites. All this data is deleted as expected at the end of a PB session, but it was all available to the Storage Inspector during a session previously. Now, no matter what is actually in storage during the session, the Inspector doesn't show any content.
Maybe it's this bug, (to be) fixed in Firefox 48: Bug 1262766 – Storage Inspector breaks down when Cache Storage throws a DOM security error.
According to the scenario:
Steps to reproduce: 1. Open a private window 2. Go to any page 3. Open Storage Inspector
Cache storage is disabled in private mode, and calling any method on the CacheStorage object (e.g., cache.keys()) will throw a DOM security exception.
Expected result: The storage inspector expects this error and recovers from it.
Actual result: The uncaught exception prevents listing the stores from finishing, and the storage UI is not initialized properly. It becomes unusable, complaining about undefined properties all the time.
When I click the host name under any of the categories of storage in Firefox 47, this appears in the Browser Console:
TypeError: this.storageTypes is null: StorageUI.prototype.fetchStorageObjects@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/storage/ui.js:321:9 StorageUI.prototype.onHostSelect@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/storage/ui.js:560:5 EventEmitter_emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/event-emitter.js:147:11 TreeWidget.prototype.onClick@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/shared/widgets/TreeWidget.js:329:7 TreeWidget.prototype.setupRoot/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/shared/widgets/TreeWidget.js:125:55
I have not tried Beta.
I just installed Firefox 46 in a sandbox to test and my suspicions are confirmed. Below are two images taken less than a minute apart, both of the Storage Inspector window while in private browsing mode on github.com
The first image is taken from FF 47. It shows "No data present" under Local Storage.
The 2nd image is taken from FF 46. It actually shows the data.
I think this is an unintended regression. The general public release notes for Firefox 47 ( https://www.mozilla.org/en-US/firefox/47.0/releasenotes/ ) don't mention any change in the Storage Inspector. The developers' release notes ( https://developer.mozilla.org/en-US/Firefox/Releases/47 ) mention new features to the Inspector, but not new restrictions.
I need help reporting this. The bugzilla site doesn't accept new accounts so I'm not sure how to get word to the devs. If you still think this is intended behavior, please let me know why
@jscher, I posted my last before seeing yours. Thanks for the link. It doesn't seem to be the same bug since that one is about how the inspector handles calling methods on the CacheStorage while in PB. In my case, no method is called; rather none of the data in any storage (Cookies, Cache, IndexedDB, Local, Session) is even shown in the Inspector (the data is properly saved by the browser, just not surfaced in the UI)
Well, that's the only bug I found that sounded relevant (storage dev tool + keyword: private). Perhaps your search will be more effective than mine.
Since you are handy with sandboxes, you could test Firefox 48 and see whether that works any better: https://www.mozilla.org/firefox/beta
Pedrico said
The bugzilla site doesn't accept new accounts so I'm not sure how to get word to the devs.
Really? I wonder what's wrong there. If you click Log In, you should be able to use Persona to sign in with your Github credentials (the button with the "cat" on it).
I avoid using the same account across sites (such as github account on bugzilla), so on that page I entered an email address and pressed "Create Account". The next page is titled "Account Creation Restricted" and is a dead end.
Your suggestion of running FF 48 beta in a sandbox was awesome. I'm running it now and the Storage Inspector is showing data!
It seems a fix is on the way to release. I'm torn between downgrading to the stable FF46 or use 48 beta but at least I have options. Thanks for taking the time to talk me through it :-)
I think that what you previously experienced was a bug with the storage inspector that is fixed in Firefox 47 and later. If there are cookies from normal mode stored then in Firefox 46 I see these cookies listed in the storage inspector in a PB mode tab. If I toggle PB mode in a tab in Firefox 47 and reopen the developer toolbox (storage inspector) then no cookies are listed.
You can use an extension to get Private Browsing mode support per tab.
Private Browsing mode tabs get a dashed underline You can toggle Private Browsing mode on/off via the right-click context menu of a tab
Pedrico said
Your suggestion of running FF 48 beta in a sandbox was awesome. I'm running it now and the Storage Inspector is showing data!
I'm not sure why the fix wasn't uplifted to Firefox 47, but perhaps they figured that most developers who cared about the Storage panel would be using either Beta or Developer Edition so it didn't need to be rushed into this release. ??
@cor-el, you may have misunderstood the Storage Inspector bug what I was reporting. It isn't limited to cookies, and for me FF 47 is the problematic, not the fixed version.