ASP.NET/jQuery:通过HTTPS读取jQuery文件导致访问被拒绝

ASP.NET/jQuery:通过HTTPS读取jQuery文件导致访问被拒绝,asp.net,jquery,vb.net,internet-explorer-7,Asp.net,Jquery,Vb.net,Internet Explorer 7,我们有一个面向公众的网站,比如说它是。实现SSL后,我无法再访问自己服务器上的jQuery 1.4.3文件。此外,在对安全设置进行调整后,我能够通过“拒绝访问”错误,但第一次调用为空 我知道在跨域问题的范围内存在不同协议的问题?这是真的吗?如果是这样,现在是否需要JSONP <script type="text/javascript" src="<%= ResolveUrl("~/js/jquery-1.4.2.min.js") %>"></script>

我们有一个面向公众的网站,比如说它是。实现SSL后,我无法再访问自己服务器上的jQuery 1.4.3文件。此外,在对安全设置进行调整后,我能够通过“拒绝访问”错误,但第一次调用为空

我知道在跨域问题的范围内存在不同协议的问题?这是真的吗?如果是这样,现在是否需要JSONP

 <script type="text/javascript" src="<%= ResolveUrl("~/js/jquery-1.4.2.min.js") %>"></script>
     <script type="text/javascript" src="<%= ResolveUrl("~/js/jquery.jstree.min.js") %>"></script>
     <script type="text/javascript" src="<%= ResolveUrl("~/js/jquery.dataTables.min.js") %>"></script>
     <script type="text/javascript" src="<%= ResolveUrl("~/js/jquery.cookie.min.js") %>"></script>

在HTTPS站点中,您应该尝试从HTTPS URL加载所有资源,包括脚本文件

如果您从非HTTPS URL加载单个Javascript文件(或JSONPAPI),那么您就破坏了HTTPS的用途,因为攻击者可以拦截该文件并注入Javascript密码窃取者或会话劫持者


还要注意,您不能将AJAX请求从HTTPS URL发送到非HTTPS URL,反之亦然。

不同的协议被视为不同的服务器,这是非常正确的

如果在每台服务器的相同路径上都有相同的文件可用,则可以使用协议相对URL:

<script src="//www.example.com/js/jquery.1.4.3.min.js"></script>


您也可以使用普通的相对URL。@说得好,假设
base
没有问题。这似乎无关紧要,URL会在HTTPSWe使用ResolveClientUrl获取每个javascript文件时返回,包括jQuery文件。这应该可以正常工作。你有什么错误?生成的HTML是什么?你引用过其他域的脚本吗?事实上,我在jQuery文件的第127行得到一个错误,e.username?x.open(n,e.url,e.async,e.username,e.password),据我所知,这应该是一个跨域错误。问题是我已经搜索了我的代码,所有内容都引用了当前域。@jllolin:您可能正在向硬编码的非HTTPS URL发送AJAX请求。您可以查看错误的堆栈跟踪并找到调用代码吗?即使没有Firebug,您也可以在IE调试器(VS或IE8开发工具)中看到不,我不是。我到处都查过了。这是我的链接。令人惊讶的是,我有相同的CSS文件的链接,它们工作正常。Javascript文件实际上是通过HTTPS://解析的。不幸的是,我试图在没有任何访问权限的情况下调试该站点。我只允许使用我的开发环境。今天早上我们向IIS服务器添加了SSL证书,现在我们也可以在内部复制它,因此我们知道这是HTTPS协议。如果他们不允许您使用Firebug,您应该找到更好的工作。您错过了终极web开发工具;它激发了其他一切。我个人每天都使用它。我可能需要尝试访问有问题的站点。他们提供VPN访问吗?您可以使用Firefox便携式浏览器或将个人笔记本电脑连接到他们的网络吗?