Repository: AlistGo/alist (language: go)

Issue:
挂载cloudreve文件下载链接有误
### Please make sure of the following things

- [X] I have read the [documentation](https://alist.nn.ci).
我已经阅读了[文档](https://alist.nn.ci)。

- [X] I'm sure there are no duplicate issues or discussions.
我确定没有重复的issue或讨论。

- [X] I'm sure it's due to `AList` and not something else(such as [Network](https://alist.nn.ci/faq/howto.html#tls-handshake-timeout-read-connection-reset-by-peer-dns-lookup-failed-connect-connection-refused-client-timeout-exceeded-while-awaiting-headers-no-such-host) ,`Dependencies` or `Operational`).
我确定是`AList`的问题，而不是其他原因（例如[网络](https://alist.nn.ci/zh/faq/howto.html#tls-handshake-timeout-read-connection-reset-by-peer-dns-lookup-failed-connect-connection-refused-client-timeout-exceeded-while-awaiting-headers-no-such-host)，`依赖`或`操作`）。

- [X] I'm sure this issue is not fixed in the latest version.
我确定这个问题在最新版本中没有被修复。


### AList Version / AList 版本

v3.32.0

### Driver used / 使用的存储驱动

cloudreve

### Describe the bug / 问题描述

未开启web代理，调取的下载链接应是{cloudreve源站}/api/v3/file/download/xxx，实际是{alist}/api/v3/file/download/xxx

### Reproduction / 复现链接

skip

### Config / 配置

skip

### Logs / 日志

_No response_


Discussion / hints:
Thanks for opening your first issue here! Be sure to follow the issue template!

### See
1. 57% #5764

<!-- Created by actions-cool/issues-similarity-analysis. Do not remove. -->

Fix patch:
diff --git a/drivers/cloudreve/driver.go b/drivers/cloudreve/driver.go
index 49c2d5f00f2..dc6d1b13213 100644
--- a/drivers/cloudreve/driver.go
+++ b/drivers/cloudreve/driver.go
@@ -71,6 +71,9 @@ func (d *Cloudreve) Link(ctx context.Context, file model.Obj, args model.LinkArg
 	if err != nil {
 		return nil, err
 	}
+	if strings.HasPrefix(dUrl, "/api") {
+		dUrl = d.Address + dUrl
+	}
 	return &model.Link{
 		URL: dUrl,
 	}, nil


Test patch: