tiddly-gittly / TidGi-Desktop

TidGi is an privacy-in-mind, automated, auto-git-backup, freely-deployed knowledge management Desktop note app, based on Tiddlywiki, with REST API for web-clipping and Anki connect. 「 太记 」是一个基于「 太微 TiddlyWiki 」的知识管理桌面应用,能保护隐私内容、高级自动化、自动Git云备份、部署为博客,且可通过RESTAPI与Anki等应用连接。(迭代开发中欢迎试用,开发进度见下方链接)(Under active development, see website below for details)
https://tidgi.fun
Mozilla Public License 2.0
1.74k stars 111 forks source link

bug: 太记里面导入的pdf或图片文件,直接导入的可以预览显示,而作为外部文件(通过路径引用)导入的无法预览显示 #423

Closed LynnXiaoLianZi closed 1 year ago

LynnXiaoLianZi commented 1 year ago

Environment 环境信息

window11系统;

太记版本: v0.8.0-prerelease15-fix2

Description 描述

image

如上述图片所述。

Steps to Reproduce 复现方式

如上述图片所述。

Additional Context 额外上下文

No response

LynnXiaoLianZi commented 1 year ago

image

另外:如上图。点击条目中的超链接也会出现报错,而不是直接跳转至浏览器对应的网站。

LynnXiaoLianZi commented 1 year ago

Another Test:
记得老版本似乎是没问题的,所以我卸载了【v0.8.0-prerelease15-fix2】版本,重新安装了【v0.8.0-prerelease13-fix2】版本。

Zacharia2 commented 1 year ago

太记最新版route似乎无法使用,Failed to execute 'fetch' on 'Window'。问题如图,Version v0.8.0-prerelease12.使用正常。

Snipaste_2023-06-23_18-38-01

另外tw-mobile-sync插件也是这样的错误。

obsidian-main.js:3 获取数据:/obstore/D:\Dropbox\21-Sandox\20-Doc\OBSIDIAN 黑曜石库\obsidian-chinese-help
obsidian-main.js:3 Uncaught (in promise) TypeError: Failed to execute 'fetch' on 'Window': Failed to parse URL from /obstore/D:\Dropbox\21-Sandox\20-Doc\OBSIDIAN 黑曜石库\obsidian-chinese-help
    at BackgroundSyncManager.fetchData (obsidian-main.js:3:2298)
    at Widget.eval (obsidian-main.js:3:690)
    at eventListeners.<computed> (widget.js:623:19)
    at Widget.dispatchEvent (widget.js:637:7)
    at a.onclick (obsidian-main.js:10:307)

但是换到Version v0.8.0-prerelease12.使用正常。 Snipaste_2023-06-23_18-43-02

都是默认初始化的wiki,无任何更改。

linonetwo commented 1 year ago

@Zacharia2 需要在工作区设置-服务器设置里,打开http服务器功能了,现在默认关了

linonetwo commented 1 year ago

最新版 0.8.0 修了

Zacharia2 commented 1 year ago

image

@linonetwo 不行哈,Version v0.8.0.版本中即使工作区设置-服务器设置打开http服务器和关闭鉴权和不关鉴权,重启服务或太记,问题依然存在。

linonetwo commented 1 year ago

@Zacharia2 我知道了,在太记里 url 是 tidgi:// 开头的。所以为了获得 ip 地址你得学 https://github.com/tiddly-gittly/tw-mobile-sync 里的做法,从 $:/info/url/full 上取

https://github.com/tiddly-gittly/tw-mobile-sync/blob/80d4b9362888b60a0686d9c92c349e4d20d6b4de/src/ui/Sidebar/SidebarDesktopContent.tid#L10C23-L10C39

Zacharia2 commented 1 year ago

@linonetwo 你的手机同步插件也是这样的问题。

图中ip是正常的ip

image

插件全部都更新了并且重启服务了。

Zacharia2 commented 1 year ago

其实看你的移动端同步插件是否报错就可以了。

原来是不能以 tidgi:// 开头的。

Zacharia2 commented 1 year ago

我把请求改成了这个,在控制台发起请求,还是一样的报错。

const response = await fetch($tw.wiki.getTiddlerText("$:/info/url/full") + "obstore/C:\\Users\\Snowy\\Documents\\GitHub\\Neural-Networks");
console.log(await response.json())

---
其中:
$tw.wiki.getTiddlerText("$:/info/url/full")
结果:'http://10.252.52.111:5212/'
VM2850:1     GET http://10.252.52.111:5212/obstore/C:/Users/Snowy/Documents/GitHub/Neural-Networks net::ERR_CONNECTION_REFUSED
(匿名) @ VM2850:1
VM2850:2 Uncaught TypeError: Failed to fetch
    at <anonymous>:1:24

在Version v0.8.0-prerelease12.没有问题

const response = await fetch("http://10.252.52.111:5212/obstore/C:/Users/Snowy/Documents/GitHub/Neural-Networks");
console.log(await response.json())
Zacharia2 commented 1 year ago

OK,解决了。同时开启HTTP服务器,加上这个。

Zacharia2 commented 1 year ago

@Zacharia2 我知道了,在太记里 url 是 tidgi:// 开头的。所以为了获得 ip 地址你得学 https://github.com/tiddly-gittly/tw-mobile-sync 里的做法,从 $:/info/url/full 上取

https://github.com/tiddly-gittly/tw-mobile-sync/blob/80d4b9362888b60a0686d9c92c349e4d20d6b4de/src/ui/Sidebar/SidebarDesktopContent.tid#L10C23-L10C39

总之,谢谢啦!

LynnXiaoLianZi commented 1 year ago

我现在暂时用的【v0.8.0-prerelease13-fix2】版本,后续如果有什么功能需要测试的,我可以帮忙测试并写一些反馈意见,略尽绵薄之力。😊😊

linonetwo commented 1 year ago

嗯,反正这里反应的问题,0.8.0 正式版应该都修了,哪天闲来没事也可以升级再试试哈