c# - 为什么.net 网站上的linkedin 小部件呈现垃圾字符?
问题描述
我们在网站上有一个linkedin关注按钮小部件。它在英语中按预期工作,但是当我们选择机器的位置(从控制面板)到瑞典并将谷歌浏览器的默认主要语言设置为“Svenksa”时,它会呈现带有垃圾字符的文本“ Följ'。
尝试使用元标记设置编码,但它不起作用。
我们使用的脚本:
<script src="//platform.linkedin.com/in.js" type="text/javascript"></script>
<script type="IN/FollowCompany" data-counter="right" data-id="XXXXXX"></script>
在英语中,它呈现正常的“FOLLOW”,但在 svenska 中,它呈现“Följ”
解决方案
当我将浏览器的语言设置为瑞典语并运行该代码段时,我在 iframe 中找到以下响应:
~$ curl -v 'https://www.linkedin.com/pages-extensions/FollowCompany?id=361557' -H 'accept-language: sv'
…
> GET /pages-extensions/FollowCompany?id=361557&counter=right HTTP/2
> Host: www.linkedin.com
> User-Agent: curl/7.54.0
> Accept: */*
> accept-language: sv
…
< HTTP/2 200
< content-type: text/html
…
<!DOCTYPE html><html><head>
…
<button class="follow-btn--no-count">Följ</button>
…
由于content-type
响应中的标头没有指定 a charset
,并且没有<meta>
带有字符集的元素,因此浏览器使用默认的 Latin-1,但文档实际上是 UTF-8。
(我的终端假定所有内容都是 UTF-8 并因此打印Följ
而不是Följ
.)
在这种情况下,您没有解决方法。你应该提交一个错误。
推荐阅读
- matlab - Creating Clusters in matlab
- for-loop - 如何在 c 中的代码中使用 for 循环和函数获得 3 的倍数?
- python - 按年到月分组:数据透视表
- python-3.x - 如何将使用pyarmor加密的Python文件转换为exe文件
- c# - C# 窗体/控件宽度不会一直更新
- javascript - 为什么 jQuery 函数 toggleClass() 不起作用?
- java - Spring Boot 使用 mysql 访问数据
- c# - 如何在 .NET Core 3.1 中以编程方式从 WSDL 定义文件中提取架构?
- python-3.x - 使用 2 个“For Loops”来确定井字游戏的获胜线
- python - 如何使用 re 模块解析文本文件中的颜色名称?