My program uses CEF(Chromium Embedded Framework) to implement a simple browser component. I want to use the File System Access API in the CEF to read and write local files but it occurs some problems. https://mburakerman.github.io/file-system-access-api-demo/ is the test page I use to experiment the File System Access API. I used Chrome at first and Chrome behaved well, it read and wrote local files normally. Then I compiled the CEF(The verstion is 96) project and used the cefclient to test whether the CEF also worked well but it could not. CEF could read the local files right but when I clicked the "Save changes" button there was no response and it failed to write the local file I choosed before either. After that I ran the source code of Chromium and CEF to compare the differences in File System Access API. When I was going to write the local file the code of Chromium and CEF ran to the same position as the picture shown below.Chromium and CEF ran to the same position when wrote local files Both of them entered in the DoRequestPermission function. It was very strange that the current_status of Chromium was "ASK" but CEF was "DENIED". The current_status value in CEFThen I checked the stack it showed that the status of the file was initialized at the message dispatch time and I could not find where the status was initialized.The stack of CEF when using File System Access API enter image description hereI wonder why the status in Chromium is "ASK". Does it use some specific command lines or some other methods?
Asked
Active
Viewed 552 times
1
-
Can you check if the request is recorded as being triggered by a user? One thing I've run into is that you cannot request new file handles or request a permission on an existing one unless Chromium considers the request to be user triggered. i.e., you can't just request it at launch or have setTimeout code at launch which then requests the permission. CEF may not be tracking this correctly or something. – Dyllon Gagnier Feb 23 '22 at 20:36
-
I'm sorry I just saw your comment and thanks for it~ – SimonMonkey Oct 15 '22 at 11:12