Node.js集成AutoDesk Forge API:认证、桶创建与模型转换正常,Viewer页面跳转后出现404错误求助
解决Forge Viewer重定向时的404错误
看起来你遇到的核心问题是Express服务器没有配置静态文件服务,导致无法找到viewer.html文件。下面是具体的排查和解决步骤:
1. 添加静态文件中间件
你的viewer.html和app.js在同一个server目录下,但Express默认不会自动提供该目录下的静态文件访问。需要在app.js的开头添加express.static中间件,告诉Express去哪里查找静态资源:
const express = require('express'); const app = express(); const path = require('path'); // 配置静态文件目录,指向当前server文件夹 app.use(express.static(__dirname)); // 或者用path模块更明确地指定路径 // app.use(express.static(path.join(__dirname)));
这一行代码会让Express把server目录作为静态资源根目录,当你访问/viewer.html时,服务器就能正确找到对应的文件了。
2. 验证重定向路径的正确性
你的代码中重定向路径是/viewer.html?urn= + urn,确认:
viewer.html的文件名没有大小写错误(比如不要写成Viewer.html)- 文件确实存在于
server目录下,没有被误放到其他文件夹中
3. 额外排查点
如果添加静态中间件后还是出现404,可以检查:
- Node.js进程是否有读取
viewer.html文件的权限 - 服务器启动时的工作目录是否正确(比如是否在
server目录下启动的node app.js,如果是在项目根目录启动,可能需要调整静态路径为path.join(__dirname, 'server'))
修改完静态中间件配置后,重启服务器再尝试重定向,应该就能正常访问viewer.html页面了。
内容的提问来源于stack exchange,提问作者Shehryar Tanoli
相关产品推荐
相关产品推荐

