iClient 调用 iPortal 中受保护的服务

作者:yx



前言

SuperMap iPortal 提供了一种密钥,简称:Key,它是在线开发中使用的应用密钥,是服务的口令标识。接下来就来介绍介绍在iClient中如何访问受保护的服务


一、iPortal中获得密钥

iPortal 的普通用户和管理员都可以添加密钥。

在门户首页,点击“登录”按钮,登录成功后,进入“我的账户”->“我的密钥”,选择“添加密钥”(首次添加密钥时,页面显示的是“获取key”,点击即可),进入添加密钥页面,输入相关参数并选择密钥允许访问的服务,点击“确定”按钮即可添加一个密钥

二、iClient调用

  1. leaflet
<script type="text/javascript">
     var key = "UtqYAcPWGl4Wqm3ADkiA0d0P";  
    var mapUrl = "http://localhost:8195/portalproxy/iserver/services/map-Population/rest/maps/PopulationDistribution"; 
    //调用权限相关接口 
    SuperMap.SecurityManager.registerKey(mapUrl,key); 
    //设置地图参数 
    var map = L.map('map',  
    {
    
     
        center: [11523496.18 , 3735091.51],
        maxZoom: 18, 
        zoom: 1,
    }); 
    //加载地图 
    L.supermap.tiledMapLayer(mapUrl,  
    {
    
    serverType: SuperMap.ServerType.IPORTAL}).addTo(map); 
</script>

在这里插入图片描述
2. classic

<script type="text/javascript">
    SuperMap.Credential.CREDENTIAL=new SuperMap.Credential("UtqYAcPWGl4Wqm3ADkiA0d0P","key");
    var map, layer,
        host = window.isLocal ? window.server : "https://iserver.supermap.io";
    url = "http://localhost:8195/portalproxy/iserver/services/map-Population/rest/maps/PopulationDistribution";
    //初始化地图
    map = new SuperMap.Map("map", {
    
    
        controls: [
            new SuperMap.Control.Navigation(),
            new SuperMap.Control.Zoom()
        ]
    });
    map.addControl(new SuperMap.Control.MousePosition());
    //初始化图层
    layer = new SuperMap.Layer.TiledDynamicRESTLayer("China", url, null, {
    
    maxResolution: "auto"});
    //监听图层信息加载完成事件
    layer.events.on({
    
    "layerInitialized": addLayer});

    function addLayer() {
    
    
        map.addLayer(layer);
        //显示地图范围
        map.setCenter(new SuperMap.LonLat(11523496.18 , 3735091.51), 1);
    }

</script>

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/supermapsupport/article/details/120710458