Onedrive Synchronisation issues

TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters

Ask for help to solve

The fix is there

Please wait for the next pre-release or release if this PR can be merged.

1 Like

By the way, what is the type of your OneDrive account? Is it a personal account, or is it a work/education account which belongs to an organization?

TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters

2023年3月11日 22:33 来自 notifications@cozic.discoursemail.com:

Microsoft 365 E5 Developer,最后的错误:Error: Access denied。

I guess the E5 Developer account works like a organization account so the Request path contains unescaped characters error is expected, just like this one

I've submitted the fix but I don't know when it will be included in the releases.


As for the Access denied error, could you please post the console output there?
To check the output:

  1. Open Joplin, Click Help->Toggle development tools
    图片

  2. Synchronize
    图片

  3. The debug console should output the Access denied error with details. Copy them and post them there.
    图片

1 Like

C:\Users\ADMINI~1\AppData\Local\Temp\2HZj4IZBHeRUj6rf0zpEM8QxyJ5\resources\app.asar\node_modules@joplin\lib\Logger.js:190 16:29:16: joplin.plugins: Uncaught exception in plugin "com.sctmes.kity-minder": Error: ENOENT: no such file or directory, stat 'C:\Users\ADMINI~1\AppData\Local\Temp\joplin-mindmap-plugin'
at statSync (node:fs:1538:3)
at e.statSync (node:electron/js2c/asar_bundle:5:4539)
at _node_internal (node:internal/fs/utils:793:8)
at Object.rmdirSync (node:fs:1156:15)
at t.clearDiskCache (/D:/D21%20%E8%BD%AF%E4%BB%B6-%E5%AD%A6%E4%B9%A0%E9%98%85%E8%AF%BB/D21.3%20%E7%AC%94%E8%AE%B0/Joplin%E7%AD%893%E4%B8%AA%E6%96%87%E4%BB%B6/Joplin/Joplin_2.9.17_Portable/JoplinProfile/tmp/plugin_com.sctmes.kity-minder.js:1:4414)
at /D:/D21%20%E8%BD%AF%E4%BB%B6-%E5%AD%A6%E4%B9%A0%E9%98%85%E8%AF%BB/D21.3%20%E7%AC%94%E8%AE%B0/Joplin%E7%AD%893%E4%B8%AA%E6%96%87%E4%BB%B6/Joplin/Joplin_2.9.17_Portable/JoplinProfile/tmp/plugin_com.sctmes.kity-minder.js:1:11630
at Generator.next ()
at a (/D:/D21%20%E8%BD%AF%E4%BB%B6-%E5%AD%A6%E4%B9%A0%E9%98%85%E8%AF%BB/D21.3%20%E7%AC%94%E8%AE%B0/Joplin%E7%AD%893%E4%B8%AA%E6%96%87%E4%BB%B6/Joplin/Joplin_2.9.17_Portable/JoplinProfile/tmp/plugin_com.sctmes.kity-minder.js:1:9508)

It looks like a new error caused by a plugin. It says Error: ENOENT: no such file or directory rather than Access denied.
Can you find Access denied in the console output? If so please post it there.
Plus, you can disable this plugin(com.sctmes.kity-minder) then check if the error still occurs.

20:17:10: Synchronizer: Error: Access denied
at OneDriveApi.oneDriveErrorResponseToError (D:\D32 软件-学习\D32.3 笔记\D32.3.2 Joplin\Joplin\resources\app.asar\node_modules@joplin\lib\onedrive-api.js:125:28)
at OneDriveApi. (D:\D32 软件-学习\D32.3 笔记\D32.3.2 Joplin\Joplin\resources\app.asar\node_modules@joplin\lib\onedrive-api.js:307:40)
at Generator.next ()
at fulfilled (D:\D32 软件-学习\D32.3 笔记\D32.3.2 Joplin\Joplin\resources\app.asar\node_modules@joplin\lib\onedrive-api.js:5:58)
at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
log @ D:\D32 软件-学习\D32.3 笔记\D32.3.2 Joplin\Joplin\resources\app.asar\node_modules@joplin\lib\Logger.js:190

It seems like something wrong in the OneDrive access. I think you can disable the set the sync target to None, then set it to OneDrive again.

最后的错误:Error: Access denied
已经设置为无,重新设置同步onedrive,错误再次出现。

I think it's something wrong on the OneDrive side.
You mentioned that you are using the E5 Development account. Do you enable the API access for OneDrive? I think they are disabled by default because I've seen a similar case on a business account.

I did a quick search and find these solutions
https://answers.microsoft.com/en-us/msoffice/forum/all/access-denied-onedrive-for-business/6b593e25-ac2c-4230-adfd-2151f78ecd8e
https://answers.microsoft.com/en-us/msoffice/forum/all/user-getting-access-denied-on-own-onedrive-for/cb8bf05d-1b4a-4e54-88c7-6db065ecca6a
Anyway, I think the Joplin works fine but the OneDrive refuses your API access, so you get the Access denied