[英]Is it a normal to make http request on node.js
我正在将SSR与react和i18next一起使用。 我对Node.js经验不足,所以问题是:这是在服务器脚本执行开始时发出外部http请求并将所有剩余的服务器脚本代码传递给then
函数的一种正常方法吗?返回的Promise
实例,作为脚本的后续部分。
捆绑并启动的服务器代码
server.js
import express from 'express';
import promiseRequest from 'request-promise';
import i18next from "i18next";
import middleware from "i18next-express-middleware";
import render from './render';
const app = express();
promiseRequest.get('https://api/localization')
.then(data => {
i18next.use(middleware.LanguageDetector);
i18next.init();
app.use(middleware.handle(i18next));
app.listen(3000, () =>
console.log('App is running')
);
return app;
});
我采用这种方式的原因是因为我需要基于服务器的响应来初始化i18n。
为什么您需要发出api请求来确定您的本地化需求? 那不是对您的静态服务器的传入请求的一部分吗(给网站提供英语,法语等)? 我不清楚您的用例。 您是否要让静态服务器的多个实例提供不同的语言服务?
我见过的一个常见模型是,每个本地化都会预先生成多个静态文件,然后根据请求将它们提供服务,例如:具有一条当用户向http:/请求时返回英文版本的路由/yourwebsite.com/en ,法语网址为http://yourwebsite.com/fr或http://yourwebsite.fr等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.