【问题标题】:How to localize a user and display a good version of my website如何本地化用户并显示我的网站的好版本
【发布时间】:2019-10-08 12:43:47
【问题描述】:

我有一个法语网站。我在后端使用 Express (nodeJS),在前端使用 JS,在模板中使用 Handlebars。 我在 MongoDB 中有数据库。

但是如何本地化我的用户?如果他不在法国,我想用我的英文数据库以英文显示该网站。

我不确定 i18 是否是一个好的解决方案,因为我想根据本地化更改模板,而不仅仅是翻译内容。

【问题讨论】:

  • 不要本地化您的用户,让他们自己做。前任。如果用户想要不同的语言,则提供一个下拉菜单供用户选择一种语言。

标签: javascript node.js mongodb express handlebars.js


【解决方案1】:

你可以在 node.js 中尝试

request.connection.remoteAddress

我在文档中找到了这个:

const http = require('http');
const server = http.createServer((req, res) => {
  const ip = res.socket.remoteAddress;
  const port = res.socket.remotePort;
  res.end(`Your IP address is ${ip} and your source port is ${port}.`);
}).listen(3000);

【讨论】:

    【解决方案2】:

    使用ip地址获取用户的国家/地区名称

    ip = request.getRemoteAddress()

    http://api.hostip.info/country.php?ip=74.125.236.206

    【讨论】:

    • 但是对于我的 IP,我得到了 XX
    • 感谢您检查您的 IP 地址。它是一个公共 api,它在大多数情况下返回正确的国家代码。如果返回 XX 则国家名称为 UNKNOWN
    猜你喜欢
    • 1970-01-01
    • 2013-01-27
    • 2014-11-19
    • 2020-10-18
    • 2014-06-17
    • 2011-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多