0

我正在尝试检查我的网址是否为 http/https,然后根据第一个下拉列表中选择的值进行 AJAX 调用以填充多个下拉列表。

var baseurl="<%=request.isSecure()%>";

if (baseurl=='true') {
    var url = 
        "https://<%=request.getServerName()%><%=request.getContextPath()%>/JsonLookup?z=" + zone;    
}
// if the protocol is 'http' 
else 
{   
    alert("inside protocol else");
    var url = "http://<%=request.getServerName()%><%=request.getContextPath()%>/JsonLookup?z=" + zone;  
    alert("inside http:"+url);
}

当协议是 http 时我有问题,下拉列表不会改变。原因是,基本 url (isSecure()) 总是返回 true,即使它是 http。

谁能帮我解决这个问题,我到底应该怎么做才能使 request.isSecure() 为 http 返回 false?

4

1 回答 1

1

你不能使用没有主机名的引用吗?

/path/to/resource

代替

http://myserver.com/path/to/resource

编辑:

您的示例如下所示:

var url = "/<%=request.getContextPath()%>/JsonLookup?z=" + zone;
alert("My root relative URL: "+url); }
于 2012-09-14T18:24:42.077 回答