0

我有一个由 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 代码?

4

1 回答 1

0

我修好了它。正在加载的 javascript 抛出了一个完整的路径(https://yoursite.com/Script/jquery.js),尽管它是本地的,而不是通过 file:// 或其他任何东西。

还必须添加投掷的安全开关以及指向这些文件的链接。

于 2013-06-18T12:54:47.167 回答