Skip to content

3.8开发者中心的数据上传下载,支持key的方式预研

方法一:

个人托管服务

  • 业务新增服务

1.services表

插入

INSERT INTO `services` VALUES (93073339, NULL, 'lujing', 'http://192.168.11.188:31381/web/user/account/common/urlConfig', '945001', '<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n<smmd:Metadata xmlns:smmd=\"http://data.sbsm.gov.cn/smmd/2007\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/ows http://schemas.opengis.net/ows/1.0.0/owsAll.xsd\">\r\n    <smmd:mdFileID>-401978881</smmd:mdFileID>\r\n    <smmd:dataIdInfo>\r\n        <smmd:DataIdent>\r\n            <smmd:idCitation>\r\n                <smmd:resTitle>map_test_ldohskm9</smmd:resTitle>\r\n            </smmd:idCitation>\r\n            <smmd:idAbs>自动注册用户数据发布的服务</smmd:idAbs>\r\n        </smmd:DataIdent>\r\n    </smmd:dataIdInfo>\r\n    <smmd:distInfo>\r\n        <smmd:onLineSrc>\r\n            <smmd:linkage>http://192.168.11.188:31381/web/user/account/common/urlConfig</smmd:linkage>\r\n        </smmd:onLineSrc>\r\n    </smmd:distInfo>\r\n</smmd:Metadata>', '自动注册用户数据发布的服务', 'SUCCESSFUL', NULL, NULL, NULL, 1, 'MAP', NULL, 0, 0, 1, '${iportalProxyServiceRoot}/6zpwyymk/web/user/account/common/urlConfig', NULL, 39, 1676252551271, 1676252551271, NULL, NULL, NULL);

permission表

insert into permission (serviceId,userName,permissionType) values (93073339,945001,'DELETE');

2.新增key关联该服务

image-20230308153915380

缺点:

1.每格用户要创建一个services数据

2.创建的service代理的url不能重复(致命问题)

方法二:

公共服务

  • 基于云分析的公共服务

    image-20230308161148068

service

INSERT INTO `services` VALUES (1, NULL, '数据上传下载', 'http://192.168.253.209:31506/iserver/services/navigation/rest', '944959', '<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n<smmd:Metadata xmlns:smmd=\"http://data.sbsm.gov.cn/smmd/2007\">\r\n    <smmd:mdContact>\r\n        <smmd:rpIndName></smmd:rpIndName>\r\n        <smmd:rpOrgName></smmd:rpOrgName>\r\n        <smmd:rpPosName></smmd:rpPosName>\r\n        <smmd:rpCntInfo>\r\n            <smmd:cntAddress>\r\n                <smmd:delPoint></smmd:delPoint>\r\n                <smmd:city></smmd:city>\r\n                <smmd:adminArea></smmd:adminArea>\r\n                <smmd:postCode></smmd:postCode>\r\n                <smmd:country></smmd:country>\r\n                <smmd:eMailAdd></smmd:eMailAdd>\r\n            </smmd:cntAddress>\r\n            <smmd:voiceNum></smmd:voiceNum>\r\n            <smmd:faxNum></smmd:faxNum>\r\n        </smmd:rpCntInfo>\r\n    </smmd:mdContact>\r\n    <smmd:dataIdInfo>\r\n        <smmd:DataIdent>\r\n            <smmd:idCitation>\r\n                <smmd:resTitle>路径导航</smmd:resTitle>\r\n            </smmd:idCitation>\r\n            <smmd:idAbs></smmd:idAbs>\r\n        </smmd:DataIdent>\r\n    </smmd:dataIdInfo>\r\n    <smmd:distInfo>\r\n        <smmd:onLineSrc>\r\n            <smmd:linkage>http://192.168.253.209:31506/iserver/services/navigation/rest</smmd:linkage>\r\n        </smmd:onLineSrc>\r\n    </smmd:distInfo>\r\n</smmd:Metadata>', NULL, 'SUCCESSFUL', NULL, NULL, NULL, 1, 'NAVIGATION', NULL, 0, 1, 0, '${iportalProxyServiceRoot}/iserver/services/navigation/rest', NULL, 36, 1448616290799, 1453900181579, NULL, NULL, NULL);

service_servicegroup表

insert into service_servicegroup(serviceId,serviceGroupId) values (1,1)
  • 新增一种服务类别

image-20230308170506345

accesscount表

servicegroup表

services表

service_sercicegroup表:

新增一种类型,等同与云分析

portal生成key

// 生成随机码的字符数组
private static final char[] RANDOM_CHARS = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
        'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
        'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };


/**
 *
 * <p>
 * 生成随机Key密钥
 * </p>
 *
 * @return
 * @since 7.1.0
 */
public static String generatedRandomKey() {
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < KeyConstant.KEY_LENGTH; i++) {
        sb.append(RANDOM_CHARS[random.nextInt(RANDOM_CHARS.length)]);
    }

    return sb.toString();
}