开发授权详解


什么是授权Key

授权Key是在线开发中使用的应用密钥,即Key,它是服务的口令标识,是一种为了保障用户发布在云平台的服务的安全机制。

如果需要使用SuperMap Online的在线服务、API等资源进行在线Web开发,您需要先申请密钥key。key是服务的口令标识,由24位随机字母+数字组成,是一种在线服务的保护机制。

申请key

任何用户登录后,都可以申请开发key

其中,根据key的具体使用场景,可以设置其应用类别为:站点访问或服务请求。

站点访问

即允许使用key来发请求的网站或Web App,例如:http://www.mywebsite.com。

这种方式适用于生产环境下,只需要确定的域名即可,后续服务器IP的变更、升级等均不受限制。

访问源IP

即允许使用key来发请求的服务器IP,一般适用于开发过程中或测试环境下。如果服务器IP变更,则需同步修改key的IP设置,key字符串本身不会变化。

如果IP设置为0.0.0.0,则表示不限制发请求的服务器,任何机器都能使用这个key发请求。请谨慎使用,建议仅限于测试。

如何使用Key

开发者在访问该服务时只需在其服务地址后加上(key)的请求参数,例如以下访问请求:

http://www.supermapol.com/iserver/services/kx8modst/rest?key=VeXOcFHJrYLsMS3YyT9AR6zc

其中“?”前的部分是需要调用的服务地址,其后的部分(key=……)为访问需要的密钥请求参数,以此url发送请求即可进行访问。

您也可以通过key访问请求在线API云存储API

Key的使用限制

key可用于两类接口:

  • 托管服务接口:包括数据管理接口、查询出图接口、数据处理接口、空间分析接口,可通过接口对已发布服务的托管数据进行下一步相关操作。
  • 标准服务接口:包括在线符号接口、二维底图接口、规划搜索接口、数据处理接口,可通过接口调用SuperMap Online提供的标绘符号、二维底图、POI搜索、地理编码等服务

只有申请了Key,您才可以调用上述接口,同时SuperMap Online每日为用户提供定量免费接口配额,您也可以前往开发商店获取更多访问次数。

请求错误说明

以下是错误请求时返回的信息:

请求响应:

{
“succeed”:”false”
“error”:
“errorMsg”:”注册的key已达上限”
“code”:”400”
}

其中code为响应错误码,errorMsg为错误详情。相应错误码说明如下:

  • 200:表示服务器成功执行了客户端的 HTTP 请求。
  • 400:请求出错。通常是客户端的请求参数不合法或没有表达足够的信息。
  • 401:表示因为安全的原因,导致对资源的操作没有完成。通常是输入了错误的 key 或错误的服务,或是发送请求的 IP 不被 key 所认可。
  • 404:表示客户端请求的资源不存在,即 URI 无效。
  • 406:表示资源不支持客户端请求的表述格式。
  • 500:表示服务器端发生非预期情况,导致请求没有完成。