Javascript nodejs中的路径

Javascript nodejs中的路径,javascript,node.js,i18n-node,Javascript,Node.js,I18n Node,我在nodeJs中面临路径问题,当用户在url中指定语言时,我将用户路由到索引页,如下所示: app.all('/:locale?/index',function(req,res,next){ if(!req.params.locale){ console.log('no param'); res.render('index'); } else { var language = req.params.locale;

我在nodeJs中面临路径问题,当用户在url中指定语言时,我将用户路由到索引页,如下所示:

   app.all('/:locale?/index',function(req,res,next){
      if(!req.params.locale){
         console.log('no param');
     res.render('index');
      } else {
       var language = req.params.locale;
        i18n.setLocale(language);
       res.render('index');
      }
    });
但是,在我的index.html页面中,图像的来源是这样指定的:./images/img1.png,当我路由用户时,我的index.html显示未找到的图像,因为它考虑了路径“lang/images/img1.png,它考虑了我的URL中的语言,你能帮助吗


谢谢

您路径中的
告诉应用程序查看当前文件夹,即
lang
。您应该能够通过指定URL:

<img src="http://myApp.com/images/img1.png">
这可能是一个更好的解决方案,因为您可以轻松地交换域;例如,在本地计算机上工作(
http://localhost:3000/
)与部署的应用程序(
http://myApp.com


一般来说,我几乎总是使用根路径而不是相对路径(例如,
/…
),因为我可能会在重构过程中移动页面,如果我必须更改任何内容,那么查找直接引用比查找相对引用更容易。

谢谢你的回答,我会尝试一下,并让你了解结果。顺便问一下,你知道模块i18n吗?我只想确认我开发的方法是否正确/最佳one@yatikamika我有你sed i18n,但我肯定不是专家。不过,我相信你可以用它搜索最佳实践(例如,快速搜索,这似乎是一个好的开始)。它推荐子域(lang.myApp.com),但我也会查其他来源。我查过了,但很明显我没有找到我问题的答案,我会使用子目录,但我不知道把语言放在这里是否更好www.example.com/fr-fr/index.html或www.example.com/index.html/fr-fr。我不知道我是否必须重定向,或者只使用渲染将fr保留在URL中,你知道吗对这些类型的问题有什么想法?不幸的是,这有点超出了我的专业知识。也许还有另一个问题是正确的?是:),当我们在索引“/:locale?/index”之前检测到变量时,我如何检查它是否存在于支持的语言中?因为实际上,当我输入www.example.com/somethingAnything/index.html时,它会重定向我:/it考虑任何东西作为一种语言,它不会自动检查它在支持的语言,我是我卵形,使一个循环,以便检查。
<img src="/images/img1.png">