Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js+;Express.js。Google向我展示了服务器端翻译ID_Node.js_Express_Translation_Pug - Fatal编程技术网

Node.js+;Express.js。Google向我展示了服务器端翻译ID

Node.js+;Express.js。Google向我展示了服务器端翻译ID,node.js,express,translation,pug,Node.js,Express,Translation,Pug,我用Node.js+Express.js制作的网页有一个非常奇怪的问题。 我的网页是多语言的(英语/西班牙语),因此在Jade模板中,我有翻译ID,根据所选语言对应于文本。好的,效果很好 现在,当我在Google中搜索网页时,它会毫无问题地出现在第一个结果中,但在描述中它会显示翻译ID,而不是呈现的文本。这很奇怪,因为翻译应该在服务器端进行,不是吗?问题似乎是没有默认语言,谷歌的网络爬虫似乎也没有指定偏好 i18n似乎合理地基于Accept Language请求头: curl——标题“接受语言:

我用Node.js+Express.js制作的网页有一个非常奇怪的问题。 我的网页是多语言的(英语/西班牙语),因此在Jade模板中,我有翻译ID,根据所选语言对应于文本。好的,效果很好


现在,当我在Google中搜索网页时,它会毫无问题地出现在第一个结果中,但在描述中它会显示翻译ID,而不是呈现的文本。这很奇怪,因为翻译应该在服务器端进行,不是吗?

问题似乎是没有默认语言,谷歌的网络爬虫似乎也没有指定偏好

i18n似乎合理地基于
Accept Language
请求头:

curl——标题“接受语言:en-US,en”http://www.porcupinee.net
curl——标题“接受语言:de”http://www.porcupinee.net

为什么,头衔
为什么,我们,头衔

它会输出why.title表达式,否则我们就看不到这些标题,问题就解决了。我添加了一种回退语言,以防在标题中没有指定它:i18n.init({fallbackLng:“en”});但是我有一个疑问:如果谷歌的爬虫没有指定一种语言。如果我的应用程序的回退语言设置为英语,它如何找到西班牙语版本?
<div id="why" class="row">
  <h2>Why should you choose us?</h2>
  <h3 class="text-center">We are young developers focused to the web</h3>
  <!-- ... -->
<div id="why" class="row">
  <h2>¿Por qué debería elegirnos?</h2>
  <h3 class="text-center">Somos jóvenes desarrolladores enfocados a la web</h3>
  <!-- ... -->
<div id="why" class="row">
  <h2>why.title</h2>
  <h3 class="text-center">why.we.title</h3>
  <!-- ... -->