2
OpenLayers 2.12和HTTP基本身份验证问题
我正在尝试使用OpenLayers 2.12从启用了HTTP基本身份验证的服务器上显示WMS图层。 我试图通过将用户名和密码放在我的JavaScript代码的URL参数中来处理身份验证。图层创建示例: myLayer = new OpenLayers.Layer.WMS('background', 'https://username:password@ws.nls.fi/rasteriaineistot/image?', { layers: 'background', bbox: '-380188,6249943,1347312,8226943' }, { displayInLayerSwitcher: true, isBaseLayer: false, projection: 'EPSG:3067', visibility: true }); 当然,这是不安全的,因为凭据存储在JavaScript代码中,并且不能在所有浏览器中使用。Internet Explorer 8给出指向OpenLayers.js的安全错误,并且根本不显示该地图。Firefox 13弹出了一些我可以取消的身份验证对话框(此后,地图会正确显示)。在Chrome 23中,身份验证似乎完美无缺。 您是否可以通过将其编码为URL并将其提供给OpenLayers来确认无法以跨浏览器的方式处理HTTP基本身份验证? 您能否建议其他方法来处理HTTP基本身份验证,以使其对用户透明(不显示身份验证弹出窗口)?也许使用某种代理服务器来解决此问题。