除了 HTTP header 中的 accept-language 之外,还有其他方法可以确定客户端语言环境吗?
Are there any other way to determine client locale other than accept-language in HTTP header?
对于那些不知道 LINE 是像微信、WhatsApp 一样的通讯工具的人
因此,当有人在他们的聊天消息中输入 URL 时,LINE App 将显示 URL (og:title, og:description) 的预览,如下图所示
我的理解是,可以使用 HTTP header 中的 accept-language
来确定内容的语言环境。
所以我的预期行为是,如果 LINE 应用程序设置为 en-US 语言,我可以在 accept-language
中看到 en-US。如果 LINE 应用程序设置为 zh-TW,我可以在 accept-language
中看到 zh-TW(类似于浏览器行为)
但是无论我在LINE App上切换到什么语言,它总是给出en-US
{ accept: '*/*',
'accept-language': 'en-US,en;q=0.8,*;q=0.6',
'user-agent': 'facebookexternalhit/1.1;line-poker/1.0',
'accept-charset': 'utf-8',
'x-forwarded-for': '10.115.21.78, 147.92.137.134',
range: 'bytes=0-1048576',
host: '8f66dff1.ngrok.io',
'accept-encoding': 'gzip,deflate',
'x-forwarded-proto': 'https' }
问题是https://google.com还是可以判断语言的变化,如上面两张图片所示,一个设置为英语,另一个设置为中文(但我不确定是否在Google 结束他们收到与上面相同的 HTTP header)
所以问题如题,请问还有其他方法可以判断吗?因为我看不到任何其他我可以在 HTTP header 中使用的东西。或者在内容协商期间,还有其他方面我可以实现 Google 所做的?
AFAIU,Google 根据发件人的 IP 地址选择语言。
有人告诉我这是 LINE 的默认行为,如果 OpenGraph 元标记不可用,LINE 将插入自己的文本,因此它可以在语言之间切换。
对于那些不知道 LINE 是像微信、WhatsApp 一样的通讯工具的人 因此,当有人在他们的聊天消息中输入 URL 时,LINE App 将显示 URL (og:title, og:description) 的预览,如下图所示
我的理解是,可以使用 HTTP header 中的 accept-language
来确定内容的语言环境。
所以我的预期行为是,如果 LINE 应用程序设置为 en-US 语言,我可以在 accept-language
中看到 en-US。如果 LINE 应用程序设置为 zh-TW,我可以在 accept-language
中看到 zh-TW(类似于浏览器行为)
但是无论我在LINE App上切换到什么语言,它总是给出en-US
{ accept: '*/*',
'accept-language': 'en-US,en;q=0.8,*;q=0.6',
'user-agent': 'facebookexternalhit/1.1;line-poker/1.0',
'accept-charset': 'utf-8',
'x-forwarded-for': '10.115.21.78, 147.92.137.134',
range: 'bytes=0-1048576',
host: '8f66dff1.ngrok.io',
'accept-encoding': 'gzip,deflate',
'x-forwarded-proto': 'https' }
问题是https://google.com还是可以判断语言的变化,如上面两张图片所示,一个设置为英语,另一个设置为中文(但我不确定是否在Google 结束他们收到与上面相同的 HTTP header)
所以问题如题,请问还有其他方法可以判断吗?因为我看不到任何其他我可以在 HTTP header 中使用的东西。或者在内容协商期间,还有其他方面我可以实现 Google 所做的?
AFAIU,Google 根据发件人的 IP 地址选择语言。
有人告诉我这是 LINE 的默认行为,如果 OpenGraph 元标记不可用,LINE 将插入自己的文本,因此它可以在语言之间切换。