问题描述
我尝试使用Twitter Card在我的网页(asp.net核心控制台应用程序)上实现Twitter Tweet按钮。
目标:通过推文(请参见下图)提交指向我的网页,标题,描述和图像的链接(通过twitter Meta标签)。
在我的网页(目标页面)上正确填充了所有元标记。
如果我在此工具中将链接粘贴到我的网页:
http://debug.iframely.com/?uri=
如果我使用 Twitter卡验证器: https://cards-dev.twitter.com/validator
我在卡验证器中看到一条错误消息: “错误:由于httpconnectionTimeout而无法获取页面”
如果我加载浏览器调试器(所有浏览器),则会发现某些资源被CORS阻止了
没有“访问控制允许来源”
详细信息:
从CORS策略阻止从原点“ https://cards-dev.twitter.com ”访问“ ** https://ton.twimg.com/tfw/fonts/rosetta-icons-Regular.woff**'的字体:否'Access-Control-Allow-Origin标头出现在请求的资源上。
所以..这两个网址都是 twitter内部网址(不是我的网站)。
我认为,twitter tweet界面也有同样的问题,这就是它不起作用的原因...
如果我使用第3方工具(大致上,请参见上面的链接),则该工具可以正常工作,因此好像我网站上的Metatag的实现很好。
注意:我已经在同一网页上实现了FB共享按钮(带有FB Meta标签),该按钮可以正常工作。
感谢您的帮助(什么会导致此问题以及如何解决)。
更新到解决方案:
解决方法
您是否可以使用不包含显式端口号的URL来访问您的网站?我认为您可能会发现Twitter Cards Validator不喜欢在域中拥有端口号。