我有一个由 IIS 7 托管的 asp.net C# 应用程序。我已经安装了一个有效的 SSL 证书并使用了安全开关,以便将每个页面从 HTTP 协议传输到 HTTPS。
在我的一个页面上,我使用 JQUERY。具体来说,我有一个使用 Javascript 绘制一些东西的画布,还有一个使用tablesorter jquery 插件的 GridView 。
当我使用 https 连接时,两者都不起作用,这意味着画布是空的,并且未显示 gridview。
如果我使用普通的 HTTP 协议,一切正常。此外,如果我不使用 gridview 上的 tablesorter 插件,即使使用 https 也能看到它。
我怀疑 https 连接阻止了我的 javascript,尽管在使用 google chrome 并查看证书时(通过单击地址栏上的小锁)它说“启用了 java 脚本”。
我的 JQUERY 本身在我网站的 MASTER PAGE 上被引用,而其他脚本(在画布上绘图和表格排序器)正在被导入到页眉部分的页面 itslef 上,例如:
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script type="text/javascript" src="/Scripts/jquery.tablesorter.js"></script>
</asp:Content>
查看 chromes 控制台,我看到以下内容(仅在使用 https 连接时):
[blocked] The page at **** ran insecure content from http://fonts.googleapis.com/css?family=Archivo+Narrow.
Resource interpreted as Script but transferred with MIME type text/html: "https://****/Scripts/jquery.tablesorter.js".
Resource interpreted as Script but transferred with MIME type text/html: "https://****/Scripts/AquaGauge.js".
Resource interpreted as Script but transferred with MIME type text/html: "https://*****/Scripts/jquery-1.10.1.min.js".
Uncaught SyntaxError: Unexpected token < Scripts/jquery-1.10.1.min.js:1
[blocked] The page at https://***** ran insecure content from http://fonts.googleapis.com/css?family=Archivo+Narrow.
Uncaught ReferenceError: $ is not defined
使用 HTTPS 连接时如何制作我的 javascript 代码?