【问题标题】:ERR_SSL_PROTOCOL_ERRORERR_SSL_PROTOCOL_ERROR
【发布时间】:2021-09-15 21:55:12
【问题描述】:

url 自动将 http 转换为 https。地图和地理服务器层不可见。

var wmsSource = new ol.source.ImageWMS({
 url: 'http://117.252.14.233:8080/geoserver/Watersheds/wms',
 params: { 'LAYERS': 'Watersheds:as_riv_15s', 'TILED': true },
 serverType: 'geoserver',
 //crossOrigin: 'anonymous'
 transition: 0,
});

var wmsLayer = new ol.layer.Image({
source: wmsSource

});

var view = new ol.View({
center: [0, 0],
zoom: 1
});

var map = new ol.Map({
layers: [wmsLayer],
target: 'map',
view: view
});

map.on('singleclick', function (evt) {
document.getElementById('info').innerHTML = '';
var viewResolution = /** @type {number} */ (view.getResolution());
var url = wmsSource.getGetFeatureInfoUrl(
    evt.coordinate, viewResolution, 'EPSG:3857',
    { 'INFO_FORMAT': 'text/html' });
if (url) {
    document.getElementById('info').innerHTML =
        '<iframe seamless src="' + url + '"></iframe>';
   }
 });

enter image description here

【问题讨论】:

    标签: javascript jquery asp.net google-maps openlayers-3


    【解决方案1】:

    如果您的应用程序在 https 上运行,但您不控制 wms 服务器,您将被限制在不强制使用 https 的旧浏览器,例如 Internet Explorer,或者您必须在自己的服务器上使用代理。一个典型的例子是这里描述的 BGS Geology 服务https://www.bgs.ac.uk/technologies/web-map-services-wms/web-map-services-geology-625k/

    为此,您需要一个简单的代理,例如

    <?php 
     $method = $_SERVER['REQUEST_METHOD'];
     if($method == "GET"){
       $url = 'http://ogc.bgs.ac.uk/cgi-bin/BGS_Bedrock_and_Superficial_Geology/wms?' . $_SERVER['QUERY_STRING'];
       $ch = curl_init($url);
       curl_setopt($ch, CURLOPT_HEADER, 0);
       curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
       $result = curl_exec($ch);
       $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
       curl_close($ch);
       if ($httpCode == 200) {
         echo $result;
       }
     }
    ?>
    

    当代理脚本命名为 bgs625.php 时,OpenLayers 代码中的普通 wms url 可以替换为url: 'bgs625.php',

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-05
      • 2020-04-19
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      • 2018-04-30
      • 2019-09-14
      • 2020-07-20
      相关资源
      最近更新 更多