我正试图让LinkedIn“跟随”按钮在我的网站上以其他语言显示,这已根据浏览器设置进行了大量本地化,我注意到LinkedIn API似乎不接受语言代码“简单”,即2个字母,如“fr”。它似乎只想要像“fr_FR”这样的代码。用“fr”我看到如下错误:
'fr' is not a supported language, defaulting to 'en_US'
这是不可接受的,因为许多用户可能只选择没有特定国家/地区变体的语言,因为许多(所有?)浏览器都允许这样做。
这是一个简单的方法吗?
答案 0 :(得分:0)
如果浏览器的语言接受设置中只有2个字母,则答案是伪造ISO3166代码的编程方法。但是,我不认为有一种永远正确的方法,虽然看起来像主要语言似乎有相应的ISO3166国家代码与语言相同(fr_FR,de_DE,es_ES - 但有趣的是:没有en_EN)。所以我想黑客的方法就是只添加2个字母的下划线和大写版本,如果它们已经不存在,那么就让它破解并默认为美国英语有这样的变种。但是,我宁愿做得更好。
不幸的是,LinkedIn的API正在以这种方式行事,因为标准似乎清楚地表明国家/地区代码是可选的。见http://en.wikipedia.org/wiki/IETF_language_tag