Skip to content

Share 错误码(174*)

段位:174001 - 174999;当前 34 个。本页覆盖三组:

  • 公开分享消费侧/public/s/{tenantCode}/{token}/...meta / verify / list / download):174001 / 174008-174011 / 174013-174014
  • 分享链接管理(V1 /v1/share-links/*:创建 / 撤销 / 查看 / 分页):174005-174007 / 174031-174038
  • 站内分享管理(V1 /v1/share-grants/*:授出 / 更新 / 撤销 / 查看 / 收发分页):174015-174030

通用约定(HTTP status / code=1 兜底 / 响应结构)见 README

  • HTTP status:200
  • 含义:公开分享链接不可用
  • 典型触发条件:访问 /public/s/{tenantCode}/{token}/... 链路(meta / verify / list / download)时,链接处于不可用状态。出于安全考虑,本码不区分链接失效的具体原因,集成方在消费侧也无需区分原因。
  • 处理建议:引导用户重新获取分享链接;或联系分享方确认链接是否仍然有效。不要尝试通过反复访问推断具体失效原因——服务端不会以可枚举的方式区分。
  • 示例响应
json
{ "code": 174001, "msg": "分享链接不可用", "data": null }

174005 SHARE_RESOURCE_NOT_FOUND

  • HTTP status:200
  • 含义:分享资源不存在
  • 典型触发条件:调用 POST /v1/share-links/save 创建分享链接时,目标资源(docId / containerId)不存在或已被删除
  • 处理建议:先确认资源存在再创建分享;资源进入 TRASHED 状态后也可能触发此码——恢复资源后重试;详见 分享模式篇
  • 示例响应
json
{ "code": 174005, "msg": "分享资源不存在", "data": null }

174006 SHARE_RESOURCE_TYPE_UNSUPPORTED

  • HTTP status:200
  • 含义:分享资源类型不支持
  • 典型触发条件:创建 ShareLink 或 ShareGrant 时 resourceType 不在支持的枚举内(支持 DOCUMENT / VERSION / CONTAINER
  • 处理建议:核对 resourceType 枚举值;ShareLink 与 ShareGrant 支持的资源类型可能不完全一致,创建前先查阅 分享模式篇
  • 示例响应
json
{ "code": 174006, "msg": "分享资源类型不支持", "data": null }

174007 SHARE_TOKEN_GENERATION_FAILED

  • HTTP status:200
  • 含义:分享 token 生成失败
  • 典型触发条件:服务端生成 ShareLink token 时遇到内部异常——正常调用极少触发
  • 处理建议:重试请求;若反复失败,携带响应中的 rid / X-Request-Id 联系 ATKONBASE 支持团队;不应自行重试超过 3 次
  • 示例响应
json
{ "code": 174007, "msg": "分享 token 生成失败", "data": null }
  • HTTP status:200
  • 含义:公开分享链接访问次数超出 maxAccessCount
  • 典型触发条件:创建 ShareLink 时设置了 maxAccessCount,公开消费侧实际访问次数累计超过上限后再次访问 /public/s/.../download
  • 处理建议:联系分享方重新创建链接(或不设次数上限);消费侧无法自行恢复
  • 示例响应
json
{ "code": 174008, "msg": "分享链接访问次数超限", "data": null }

174009 PASSWORD_REQUIRED

  • HTTP status:200
  • 含义:公开分享链接需要密码但未携带
  • 典型触发条件:访问已设置密码的 ShareLink(消费侧 ShareLinkResultDTO.requiresPassword=true)时,未先调用 /verify 端点完成密码验证
  • 处理建议:先调用 POST /public/s/{tenantCode}/{token}/verify 提交密码,验证通过后再继续后续 meta / list / download 调用
  • 示例响应
json
{ "code": 174009, "msg": "需要密码", "data": null }

174010 PASSWORD_INVALID

  • HTTP status:200
  • 含义:公开分享链接密码错误
  • 典型触发条件:调用 /public/s/{tenantCode}/{token}/verify 提交的 password 与服务端记录不匹配
  • 处理建议:在前端弹出密码输入框,提示用户重输;服务端未提供"剩余尝试次数"语义,但实际密码错误次数可能触发风控或链接锁定
  • 示例响应
json
{ "code": 174010, "msg": "密码错误", "data": null }

174011 PASSWORD_NOT_REQUIRED

  • HTTP status:200
  • 含义:公开分享链接未设密码却被传入了密码
  • 典型触发条件:链接 requiresPassword=false,集成方仍调用了 /verify 端点
  • 处理建议:消费侧调用 /verify 前先 GET /public/s/{tenantCode}/{token}requiresPassword 字段——仅在 true 时展示密码输入框并调 /verify
  • 示例响应
json
{ "code": 174011, "msg": "无需密码", "data": null }

174013 IP_NOT_ALLOWED

  • HTTP status:200
  • 含义:访问方 IP 不在公开分享链接允许列表内
  • 典型触发条件:链接创建时配置了 IP 白名单,访问方真实 IP 不匹配
  • 处理建议:联系分享方核对 IP 白名单配置;消费侧无法自行绕过
  • 示例响应
json
{ "code": 174013, "msg": "IP 不允许访问", "data": null }
  • HTTP status:200
  • 含义:CONTAINER 公开分享 path 参数无效
  • 典型触发条件:访问 CONTAINER 类型 ShareLink 的 /list/download 端点时,传入的 path 缺失、段不在被分享子树内、或对应资源已不存在 / 非 ACTIVE。path 错误是调用方可自行纠正的参数问题,故与 SHARE_LINK_UNAVAILABLE 分为独立错误码
  • 处理建议:先调用 GET /public/s/{tenantCode}/{token}/list 获取合法的子路径列表,再按返回的 path 调用 /download
  • 示例响应
json
{ "code": 174014, "msg": "分享链接路径无效", "data": null }

站内分享管理(174015 - 174030)

经 V1 /v1/share-grants/* 暴露:把容器 / 文档分享给租户内的用户 / 角色 / 部门(授出 save、更新 update、撤销 delete、查看 getDetail、收发分页 getOutgoingPage / getIncomingPage)。需在委派用户身份的会话下调用。

174015 SHARE_GRANT_NOT_FOUND

  • HTTP status:200
  • 含义:站内分享不存在
  • 典型触发条件:按 shareGrantId 解析失败(不存在或不可见)
  • 处理建议:核对 shareGrantId;可先查收 / 发分页确认
  • 示例响应
json
{ "code": 174015, "msg": "站内分享不存在", "data": null }

174016 SHARE_GRANT_NOT_FOUND_OR_REVOKED

  • HTTP status:200
  • 含义:站内分享不存在或已撤销
  • 典型触发条件update 前置校验时目标分享不存在或已被撤销
  • 处理建议:确认分享仍有效;已撤销的分享需重新授出
  • 示例响应
json
{ "code": 174016, "msg": "站内分享不存在或已撤销", "data": null }

174017 SHARE_GRANT_ALREADY_REVOKED

  • HTTP status:200
  • 含义:站内分享已撤销
  • 典型触发条件:对已撤销的分享重复撤销
  • 处理建议:无需重复撤销
  • 示例响应
json
{ "code": 174017, "msg": "站内分享已撤销", "data": null }

174018 SHARE_GRANT_UPDATE_FORBIDDEN

  • HTTP status:200
  • 含义:无权修改他人创建的站内分享
  • 典型触发条件:修改非本人创建的分享
  • 处理建议:仅可修改自己授出的分享
  • 示例响应
json
{ "code": 174018, "msg": "无权修改该站内分享", "data": null }

174019 SHARE_GRANT_REVOKE_FORBIDDEN

  • HTTP status:200
  • 含义:无权撤销他人创建的站内分享
  • 典型触发条件:撤销非本人创建的分享
  • 处理建议:仅可撤销自己授出的分享
  • 示例响应
json
{ "code": 174019, "msg": "无权撤销该站内分享", "data": null }

174020 SHARE_GRANT_VIEW_FORBIDDEN

  • HTTP status:200
  • 含义:无权查看此站内分享
  • 典型触发条件:查看与自己无关(既非授出方也非接收方)的分享
  • 处理建议:仅可查看自己授出或收到的分享
  • 示例响应
json
{ "code": 174020, "msg": "无权查看该站内分享", "data": null }

174021 SHARE_GRANT_NOT_OWNED_FOR_OVERWRITE

  • HTTP status:200
  • 含义:接收方已有他人创建的活跃分享,无法覆盖
  • 典型触发条件:对同一接收方 upsert,但该接收方已有由他人创建的活跃分享
  • 处理建议:由原授出方调整,或与管理员协调;不能覆盖他人的分享
  • 示例响应
json
{ "code": 174021, "msg": "已有他人创建的分享,无法覆盖", "data": null }

174022 SHARE_GRANT_RESOURCE_TYPE_UNSUPPORTED

  • HTTP status:200
  • 含义:站内分享仅支持容器 / 文档
  • 典型触发条件:分享的 resourceTypeCONTAINER / DOCUMENT
  • 处理建议:站内分享仅支持 CONTAINER / DOCUMENT
  • 示例响应
json
{ "code": 174022, "msg": "站内分享仅支持容器 / 文档", "data": null }

174023 SHARE_GRANT_PRESET_REQUIRED

  • HTTP status:200
  • 含义permissionPreset 不能为空
  • 典型触发条件:授出分享时未提供权限预设
  • 处理建议:提供 permissionPreset(权限预设)
  • 示例响应
json
{ "code": 174023, "msg": "权限预设不能为空", "data": null }

174024 SHARE_GRANT_GRANTEE_REQUIRED

  • HTTP status:200
  • 含义grantee 不能为空
  • 典型触发条件:未提供接收方,或缺少 granteeType / granteeId
  • 处理建议:提供完整的接收方(granteeType + granteeId
  • 示例响应
json
{ "code": 174024, "msg": "接收方不能为空", "data": null }

174025 SHARE_GRANTEE_NOT_FOUND

  • HTTP status:200
  • 含义:分享接收方不存在
  • 典型触发条件:接收方(用户 / 角色 / 部门)不存在于当前租户
  • 处理建议:核对接收方标识与类型确实存在于本租户
  • 示例响应
json
{ "code": 174025, "msg": "分享接收方不存在", "data": null }

174026 SHARE_GRANT_MANUAL_ACL_CONFLICT

  • HTTP status:200
  • 含义:已有手动 ACL 授权,无法分享
  • 典型触发条件:接收方已有针对该资源的手动 ACL 授权,与分享冲突
  • 处理建议:先移除现有手动 ACL,或由管理员协调后再分享
  • 示例响应
json
{ "code": 174026, "msg": "已有手动 ACL 授权,无法分享", "data": null }

174027 SHARE_GRANT_ALREADY_ACTIVE

  • HTTP status:200
  • 含义:接收方已有活跃分享
  • 典型触发条件:对已有活跃分享的接收方再次授出
  • 处理建议:直接更新现有分享,而非重复授出
  • 示例响应
json
{ "code": 174027, "msg": "接收方已有活跃分享,请直接更新", "data": null }

174028 SHARE_EXPIRES_AT_IN_PAST

  • HTTP status:200
  • 含义:过期时间不能早于当前时间
  • 典型触发条件:分享 expiresAt 设为过去的时间
  • 处理建议:设置一个晚于当前时间的过期时间,或不设以表示长期有效
  • 示例响应
json
{ "code": 174028, "msg": "过期时间不能早于当前时间", "data": null }

174029 SHARE_EXPIRES_AT_EXCEEDS_MAX

  • HTTP status:200
  • 含义:过期时间超过允许的最大 TTL
  • 典型触发条件:分享 expiresAt 超过允许的最大 TTL 天数
  • 处理建议:将过期时间控制在允许的最大 TTL 内
  • 示例响应
json
{ "code": 174029, "msg": "过期时间超过允许上限", "data": null }

174030 SHARE_CURRENT_USER_UNRESOLVED

  • HTTP status:200
  • 含义:无法解析当前登录用户身份
  • 典型触发条件:授出 / 撤销站内分享时会话缺用户身份(仅客户端凭证、未委派用户)
  • 处理建议:在委派用户身份的会话下调用(下发用户 token 或 act-as 委派头)
  • 示例响应
json
{ "code": 174030, "msg": "无法解析当前登录身份", "data": null }

分享链接管理(174031 - 174038)

经 V1 /v1/share-links/* 暴露:创建(save)、撤销(delete)、查看(getDetail)、分页(getPage)公开分享链接。链接的匿名消费侧错误码见本页前半部分(174001 / 174008-174014)。

  • HTTP status:200
  • 含义:分享链接不存在
  • 典型触发条件:按 shareLinkId 解析失败
  • 处理建议:核对 shareLinkId;可先分页查询确认
  • 示例响应
json
{ "code": 174031, "msg": "分享链接不存在", "data": null }
  • HTTP status:200
  • 含义:分享链接已撤销
  • 典型触发条件:对已撤销的链接重复撤销
  • 处理建议:无需重复撤销
  • 示例响应
json
{ "code": 174032, "msg": "分享链接已撤销", "data": null }
  • HTTP status:200
  • 含义:无权撤销此分享链接
  • 典型触发条件:撤销非本人有权管理的链接
  • 处理建议:仅可撤销自己有权管理的链接
  • 示例响应
json
{ "code": 174033, "msg": "无权撤销该分享链接", "data": null }
  • HTTP status:200
  • 含义:无权查看此分享链接
  • 典型触发条件:查看非本人有权管理的链接详情
  • 处理建议:仅可查看自己有权管理的链接
  • 示例响应
json
{ "code": 174034, "msg": "无权查看该分享链接", "data": null }
  • HTTP status:200
  • 含义maxAccessCount 必须为正整数
  • 典型触发条件:创建链接时 maxAccessCount 非正整数
  • 处理建议maxAccessCount 取正整数;不限次数则不设该字段
  • 示例响应
json
{ "code": 174035, "msg": "maxAccessCount 必须为正整数", "data": null }
  • HTTP status:200
  • 含义permissionBits 取值非法
  • 典型触发条件permissionBits 不是 READ(1) / DOWNLOAD(2) / READ|DOWNLOAD(3) 之一
  • 处理建议permissionBits 仅取 1 / 2 / 3
  • 示例响应
json
{ "code": 174036, "msg": "permissionBits 取值非法", "data": null }
  • HTTP status:200
  • 含义:容器分享 permissionBits 必须含 READ
  • 典型触发条件:分享容器时 permissionBits 未包含 READ(1)
  • 处理建议:容器分享须含 READ(1)(可叠加 DOWNLOAD
  • 示例响应
json
{ "code": 174037, "msg": "容器分享必须包含 READ 权限", "data": null }
  • HTTP status:200
  • 含义allowedIps 含无效 CIDR
  • 典型触发条件:IP 白名单 allowedIps 中含格式非法的 CIDR
  • 处理建议:使用合法的 CIDR 表示(如 203.0.113.0/24
  • 示例响应
json
{ "code": 174038, "msg": "allowedIps 含无效 CIDR", "data": null }