如图所示,我们有很多带有客户端URL的引用外部脚本和资源的ASP.NET代码。显然,这是一个Facebook应用程序,但是这并不是真正相关的更普遍的问题:将HTTP/HTTPS与网页协议对齐?
什么是聪明的方式来切换HTTP和HTTPS之间的所有脚本和链路协议与由页面的用户选择的协议一致?
的用户可在不安全模式,
http://apps.facebook.com/app1
或在安全模式下冲浪
HTTPS://apps.facebook.com/app1
的页面内容样品:
<script type='text/javascript' src="http://cdn.jquerytools.org/1.2.5/all/jquery.tools.min.js">
</script>
<% if (IsFrench) { %>
<script src="http://connect.facebook.net/fr_CA/all.js"></script>
<% } else { %>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<% } %>
[剪断]
<a href="http://www.microsoft.com/about.aspx">Microsoft About Page</a>
<a href="http://www.example.com/">Example Page</a>
[剪断]
<script type="text/javascript" language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"
type="text/javascript">
</script>
<script type='text/javascript' src="http://cdn.jquerytools.org/1.2.5/all/jquery.tools.min.js">
[等等]
你是第一个平局。谢谢。这些年来,我没有意识到存在简单的机制。 – 2011-04-28 19:37:47
有没有人知道使用无协议URL的浏览器兼容性问题,还是相当安全? – 2011-04-28 19:49:57
兼容性和RFC信息在这里回答:http://stackoverflow.com/questions/550038/is-it-valid-to-replace-http-with-in-a-script-src-http/550073#550073 – 2011-04-28 20:06:12