{"record":{"id":"7bb7e5d4dd6515c0","repo":"AlistGo/alist","slug":"webdav-proxy-error-v","errorCode":null,"errorMessage":"webdav proxy error: %+v","messagePattern":"webdav proxy error: %\\+v","errorType":"http","errorClass":null,"httpStatus":500,"severity":"error","filePath":"server/webdav/webdav.go","lineNumber":252,"sourceCode":"\t\treturn http.StatusOK, nil\n\t}\n\tif fi.IsDir() {\n\t\treturn http.StatusMethodNotAllowed, nil\n\t}\n\t// Let ServeContent determine the Content-Type header.\n\tstorage, _ := fs.GetStorage(reqPath, &fs.GetStoragesArgs{})\n\tdownProxyUrl := storage.GetStorage().DownProxyUrl\n\tif storage.GetStorage().WebdavNative() || (storage.GetStorage().WebdavProxy() && downProxyUrl == \"\") {\n\t\tlink, _, err := fs.Link(ctx, reqPath, model.LinkArgs{Header: r.Header, HttpReq: r})\n\t\tif err != nil {\n\t\t\treturn http.StatusInternalServerError, err\n\t\t}\n\t\tif storage.GetStorage().ProxyRange {\n\t\t\tcommon.ProxyRange(link, fi.GetSize())\n\t\t}\n\t\terr = common.Proxy(w, r, link, fi)\n\t\tif err != nil {\n\t\t\treturn http.StatusInternalServerError, fmt.Errorf(\"webdav proxy error: %+v\", err)\n\t\t}\n\t} else if storage.GetStorage().WebdavProxy() && downProxyUrl != \"\" {\n\t\tu := common.BuildDownProxyURL(downProxyUrl, reqPath, storage.GetStorage().DownProxySign)\n\t\tw.Header().Set(\"Cache-Control\", \"max-age=0, no-cache, no-store, must-revalidate\")\n\t\thttp.Redirect(w, r, u, http.StatusFound)\n\t} else {\n\t\tlink, _, err := fs.Link(ctx, reqPath, model.LinkArgs{IP: utils.ClientIP(r), Header: r.Header, HttpReq: r, Redirect: true})\n\t\tif err != nil {\n\t\t\treturn http.StatusInternalServerError, err\n\t\t}\n\t\thttp.Redirect(w, r, link.URL, http.StatusFound)\n\t}\n\treturn 0, nil\n}\n\nfunc (h *Handler) handleDelete(w http.ResponseWriter, r *http.Request) (status int, err error) {\n\treqPath, status, err := h.stripPrefix(r.URL.Path)\n\tif err != nil {","sourceCodeStart":234,"sourceCodeEnd":270,"githubUrl":"https://github.com/AlistGo/alist/blob/843d9dc8149126976b2625911e45a4d3ffd6f2f5/server/webdav/webdav.go#L234-L270","documentation":"Error \"webdav proxy error: %+v\" thrown in AlistGo/alist.","triggerScenarios":"Thrown at server/webdav/webdav.go:252 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Inspect the underlying error details in the message, fix the indicated cause (credentials, network, or provider-side failure), and retry."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"843d9dc8149126976b2625911e45a4d3ffd6f2f5","analyzedAt":"2026-08-15T12:14:11.722Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}