华为云用户手册
-
为策略绑定API 单击策略名称,进入策略详情。 在API列表区域选择环境后,单击“绑定API”。 筛选API分组以及发布环境,勾选所需的API。 支持通过API名称或标签筛选API,标签为创建API时定义的标签。 单击“确定”,绑定完成。 如果单个API不需要绑定此策略,单击API所在行的“解绑”。 如果批量API不需要绑定此策略,则勾选待解绑的API,单击列表上方“解绑”。最多同时解绑1000个API。
-
注意事项 仅支持华为云 CCE Turbo 集群、VPC网络模型的CCE集群。 您需要确保当前实例与CCE集群所属同一个VPC中,或通过其他方式保证两者网络可达,否则导入后调用API会出现失败场景。 选择VPC网络模型的CCE集群时,您需要在实例详情界面的路由配置中添加CCE集群的容器网段,否则导入后调用API会出现失败场景。 导入后会生成相应的API以及微服务类型的负载通道,负载通道会监测工作负载下所有实例的地址变化,并更新到负载通道中。
-
绑定SSL证书(可选) 如果API分组中的API支持HTTPS请求协议,则需要为独立 域名 绑定SSL证书。否则跳过此步骤。 在域名所在行单击“选择SSL证书”。 在选择SSL证书弹窗中勾选要绑定的SSL证书,然后单击“确定”,完成SSL证书的绑定。 如果选择的SSL证书上传过CA证书,可以勾选“开启客户端认证”即开启HTTPS双向认证。注意,开启/关闭客户端认证会对现有业务有影响,请谨慎操作。 如果证书列表中无可用的SSL证书,可单击“创建SSL证书”,新增SSL证书,具体操作配置请参考创建SSL证书。
-
获取域名 申请域名。 云服务平台内业务系统访问API的场景,需获取内网域名作为独立域名。具体请参考创建内网域名。 云服务平台外业务系统访问API的场景,需获取公网域名作为独立域名。具体可通过 域名注册服务 申请。 备案公网域名,您可以通过备案中心完成域名备案。备案时长需几个工作日,建议您提前进行备案。 在域名上添加实例“虚拟私有云访问地址”的A类型记录集,具体请参考增加A类型记录集。 或者在域名上添加API分组“调试域名”的CNAME类型记录集,具体请参考增加CNAME类型记录集。 如果API分组中的API支持HTTPS请求协议,则需要为独立域名添加SSL证书。您需要提前获取SSL证书的内容和密钥,并创建SSL证书。
-
约束与限制 调试域名默认只能在与实例相同VPC内的服务器上解析和访问,如果调试域名要支持公网解析与访问,请在实例上绑定公网入口弹性IP。 调试域名不能用于生产业务,且仅限应用程序调试使用。 同一实例下的不同分组不能绑定相同的独立域名。 独立域名绑定端口时,同一域名不支持绑定相同端口。 同一域名不同端口,无论哪个端口绑定/修改/解绑SSL证书、开启/关闭客户端认证,所有端口都会同步生效。 如果您通过负载通道访问后端服务,那么独立域名绑定的端口需与负载通道中后端服务器的访问端口保持一致。 独立域名绑定端口后,如果您通过IP地址访问API,那么需要在请求消息中添加Header参数“host”,host值必须带有对应的访问协议的端口(默认的80/443端口,host值可以不带)。 如果您通过IP地址访问API,则无法使用域名证书完成SSL认证,除非配置了IP证书。因此,不推荐使用IP地址访问API,否则无法保证链路安全。 启用http to https自动重定向时,由于浏览器限制,非GET或非HEAD方法的重定向可能导致数据丢失,因此,API请求方法限定为GET或HEAD。仅当API的请求协议选择“HTTPS”或“HTTP&HTTPS”,且独立域名已绑定SSL证书时重定向生效。
-
配置终端节点信息 进入API网关控制台页面。 在左侧导航栏选择“实例管理”。 在已创建的实例上,单击“查看控制台”或实例名称。 单击“终端节点管理”页签,根据下表参数说明,查看终端节点信息,详细信息可参考终端节点管理。 表1 终端节点信息 参数 说明 服务信息 展示的名称由{region}.{终端节点服务名称}.{终端节点服务ID}组成。您在购买实例时,会同步创建 VPC终端节点 服务,可以设置终端节点服务名称,也可以在此处修改终端节点服务名称。 连接管理 展示连接到网关实例的终端节点信息。如果需要新建终端节点,请单击“创建终端节点”创建。 终端节点ID:终端节点的ID。 报文标识:终端节点ID的标识,用来识别是哪个终端节点。 状态:终端节点的状态。 关于终端节点的各个状态,请查看终端节点服务和终端节点有哪些状态?。 拥有者:终端节点创建者的账号ID。 创建时间:终端节点的创建时间。 操作:终端节点服务对终端节点的连接审批,可选择“接受”或“拒绝”。 须知: 如您仍有业务通过该连接进行访问,拒绝已建立的连接可能导致业务受损,请谨慎操作。 权限管理 权限管理用于控制是否允许跨租户的终端节点进行访问。可以设置允许连接该终端节点服务的授权账号ID,将授权账号ID添加至终端节点服务的白名单中。 单击“添加白名单记录”,填写账号ID。 授权账号ID:连接访问终端节点的授权账号ID。 创建时间:白名单的创建时间。 操作:对连接访问终端节点的授权账号进行操作,支持将授权账号从白名单中删除。
-
简单请求 对于简单请求,您需要开启简单跨域访问。 场景一:已开启CORS,且后端服务响应消息中未指定跨域头时,API网关接受任意域的请求,并返回“Access-Control-Allow-Origin”跨域头,示例如下: 浏览器发送一个带Origin字段的请求消息: GET /simple HTTP/1.1 Host: www.test.com Origin: http://www.cors.com Content-Type: application/x-www-form-urlencoded; charset=utf-8 Accept: application/json Date: Tue, 15 Jan 2019 01:25:52 GMT Origin:此字段必选,表示请求消息所属源,上例中请求来源于“http://www.cors.com”,API网关/后端服务根据这个值,决定是否同意本次请求。 后端服务返回响应消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway {"status":"200"} API网关响应消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway X-Request-Id: 454d689fa69847610b3ca486458fb08b Access-Control-Allow-Origin: * {"status":"200"} Access-Control-Allow-Origin:此字段必选,“*”表示API网关接受任意域的请求。 场景二:已开启CORS,且后端服务响应消息中指定跨域头时,后端服务响应的跨域头将覆盖API网关增加的跨域头,示例如下: 浏览器发送一个带Origin字段的请求消息: GET /simple HTTP/1.1 Host: www.test.com Origin: http://www.cors.com Content-Type: application/x-www-form-urlencoded; charset=utf-8 Accept: application/json Date: Tue, 15 Jan 2019 01:25:52 GMT Origin:此字段必选,表示请求消息所属源,上例中请求来源于“http://www.cors.com”,API网关/后端服务根据这个值,决定是否同意本次请求。 后端服务返回响应消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway Access-Control-Allow-Origin: http://www.cors.com {"status":"200"} Access-Control-Allow-Origin:表示后端服务接受“http://www.cors.com”的请求。 API网关响应消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway X-Request-Id: 454d689fa69847610b3ca486458fb08b Access-Control-Allow-Origin: http://www.cors.com {"status":"200"} 后端服务响应消息中的跨域头覆盖API网关响应消息中的跨域头。
-
非简单请求 对于非简单请求,您需要开启跨域访问,并且创建一个“请求方法”为“OPTIONS”的API。 “请求方法”为“OPTIONS”的API和普通API的区别如下: 所属分组:选择已开启CORS的API所在的分组。 请求方法:选择“OPTIONS”。 请求协议:选择与已开启CORS的API相同的请求协议。 路径:填斜杠/即可,也可选择与已开启CORS的API相同或者匹配的请求Path。 安全认证:可选择“无认证”。无论选择哪种认证方式,API网关都按照无认证处理。 支持跨域CORS:选择开启CORS。 假设后端服务类型为Mock,示例如下: 浏览器发送“请求方法”为“OPTIONS”的API请求: OPTIONS /HTTP/1.1 User-Agent: curl/7.29.0 Host: localhost Accept: */* Origin: http://www.cors.com Access-Control-Request-Method: PUT Access-Control-Request-Headers: X-Sdk-Date Origin:此字段必选,表示请求消息所属源。 Access-Control-Request-Method:此字段必选,表示请求会使用哪些HTTP请求方法。 Access-Control-Request-Headers:此字段可选,表示请求会额外发送的头信息字段。 后端服务返回消息:无 API网关返回消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 02:38:48 GMT Content-Type: application/json Content-Length: 1036 Server: api-gateway X-Request-Id: c9b8926888c356d6a9581c5c10bb4d11 Access-Control-Allow-Origin: * Access-Control-Allow-Headers: X-Stage,X-Sdk-Date,X-Sdk-Nonce,X-Proxy-Signed-Headers,X-Sdk-Content-Sha256,X-Forwarded-For,Authorization,Content-Type,Accept,Accept-Ranges,Cache-Control,Range Access-Control-Expose-Headers: X-Request-Id,X-Apig-Latency,X-Apig-Upstream-Latency,X-Apig-RateLimit-Api,X-Apig-RateLimit-User,X-Apig-RateLimit-App,X-Apig-RateLimit-Ip,X-Apig-RateLimit-Api-Allenv Access-Control-Allow-Methods: GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH Access-Control-Max-Age: 172800 Access-Control-Allow-Origin:此字段必选,“*”表示API网关接受任意域的请求。 Access-Control-Allow-Headers:当请求消息中包含此字段时,此字段必选。表示允许跨域的所有请求头信息字段。 Access-Control-Expose-Headers:表示跨域访问允许查看的返回头信息字段。 Access-Control-Allow-Methods:此字段必选,表示API网关支持的所有HTTP请求方法。 Access-Control-Max-Age:此字段可选,表示本次预检的有效期,单位:秒。在有效期内,无需再次发出预检请求。 浏览器发送一个带Origin字段的请求头: PUT /simple HTTP/1.1 Host: www.test.com Origin: http://www.cors.com Content-Type: application/x-www-form-urlencoded; charset=utf-8 Accept: application/json Date: Tue, 15 Jan 2019 01:25:52 GMT 后端服务返回消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway {"status":"200"} API网关返回消息: HTTP/1.1 200 OK Date: Tue, 15 Jan 2019 01:25:52 GMT Content-Type: application/json Content-Length: 16 Server: api-gateway X-Request-Id: 454d689fa69847610b3ca486458fb08b Access-Control-Allow-Origin: * {"status":"200"}
-
开启跨域访问 API网关默认不开启跨域访问,如果您需要开启,请参考以下说明完成跨域配置。如需自定义跨域的请求头、跨域的请求方法和指定授权访问的域,请使用配置API的跨域资源共享。 简单请求的跨域访问 如果是创建新的API,在“安全配置”时,勾选“开启支持跨域(CORS)”开关。详细的使用指导,可参考简单请求。 非简单请求的跨域访问 非简单请求的跨域访问可通过两种配置方式实现,选择其中一种配置即可。 方式一:配置一个OPTIONS请求,作为预检请求。预检请求API的参数设置,操作详情请参考非简单请求。 方式二:只需配置一个跨域资源共享策略并绑定API即可,配置详情请参考配置API的跨域资源共享。 在“前端定义”中,参数填写说明如下: 请求方法:选择“OPTIONS” 请求协议:选择与已开启CORS的API相同的请求协议 路径:填斜杠/ 图2 预检请求-定义API请求 在“安全配置”中,安全认证选“无认证”,勾选“开启支持跨域CORS”。 图3 预检请求-使用无认证方式 后端配置选择“Mock”。 图4 预检请求-后端选Mock
-
开放API流程 企业或开发者通过API网关开放自身的服务与数据,实现业务能力变现。 创建API分组 每个API都归属到某一个API分组下,在创建API前应提前创建API分组。 添加API的SSL证书 如果API分组中的API支持HTTPS请求协议,需要为独立域名添加SSL证书。反之,跳过此步骤。 配置API的调用域名 在开放API前,您需要为API分组绑定一个独立域名,供API调用者访问API使用。 在绑定独立域名前,您可以使用系统为API分配的调试域名进行API调试,每天最多可以访问调试域名1000次。系统自动分配的域名不能用于生产业务,且仅限应用程序调试使用。 创建API的负载通道(可选) 如果需要访问指定服务器中已部署的后端服务,可通过创建负载通道来实现。反之,跳过此步骤。 创建API 把已有后端服务封装为标准RESTFul API或GRPC API,并对外开放。 API创建成功后,您可根据业务需求配置API策略,管理API等。 调试APIG创建的API 通过APIG提供的在线调试功能验证 API服务 是否正常可用。 配置API的发布环境和环境变量(可选) API可以同时提供给不同的环境调用,如生产、测试或开发。RELEASE是系统默认的发布环境,如果使用RELEASE环境,可跳过配置发布环境步骤。 如果API的后端服务信息中定义了环境变量,则需要在环境中添加对应的变量。通过环境变量,可实现同一个API,在不同环境中调用不同的后端服务。 发布APIG创建的API 把API发布到环境中,API只有在发布到环境后,才支持被调用。 父主题: 开放API
-
更新SSL证书 进入证书列表页面,找到待更新证书,在“操作”列单击“编辑”,修改证书信息即可。 更新SSL证书不影响API的调用。 如果待更新证书已绑定独立域名,那么所有访问这个域名的客户端都会看到更新后的证书。 如果更新的SSL证书已绑定独立域名且更新的内容新增CA证书,那么独立域名侧默认关闭“支持客户端认证”即关闭HTTPS双向认证;如果更新的SSL证书已绑定独立域名且更新的内容无CA证书,那么独立域名侧默认关闭“支持客户端认证”即未开启HTTPS双向认证。
-
转换证书为PEM格式 格式类型 转换方式(通过OpenSSL工具进行转换) CER/CRT 将“cert.crt”证书文件直接重命名为“cert.pem”。 PFX 提取私钥命令,以“cert.pfx”转换为“key.pem”为例。 openssl pkcs12 -in cert.pfx -nocerts -out key.pem 提取证书命令,以“cert.pfx”转换为“cert.pem”为例。 openssl pkcs12 -in cert.pfx -nokeys -out cert.pem P7B 证书转换,以“cert.p7b”转换为“cert.cer”为例。 openssl pkcs7 -print_certs -in cert.p7b -out cert.cer 将“cert.cer”证书文件直接重命名为“cert.pem”。 DER 提取私钥命令,以“privatekey.der”转换为“privatekey.pem”为例。 openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem 提取证书命令,以“cert.cer”转换为“cert.pem”为例。 openssl x509 -inform der -in cert.cer -out cert.pem
-
使用AppCode进行API请求的简易认证 在创建API时,选择“APP认证”并且开启“支持简易认证”。 如果您修改已有API为简易认证,需要在修改完成后,将API重新发布,使简易认证模式生效。 将支持简易认证的API绑定到已创建的凭据。 发送请求时,增加请求头部参数“X-Apig-AppCode”,省略请求签名相关信息。 以Curl方式为例,增加头部参数名称:X-Apig-AppCode,参数值填已生成的AppCode。 curl -X GET "https://api.exampledemo.com/testapi" -H "content-type: application/json" -H "host: api.exampledemo.com" -H "X-Apig-AppCode: xhrJVJKABSOxc7d***********FZL4gSHEXkCMQC"
-
x-apigateway-plugins 含义:API网关定义的API插件服务。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/path': get: x-apigateway-plugins: ['Plugin_mock'] 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-plugins 否 Array API所绑定的插件名列表。 父主题: APIG的API设计文件扩展定义
-
APIG的API响应消息头说明 调用API时,API网关增加下表中的响应消息头。 X-Apig-Mode: debug表示响应消息头增加API网关调试信息。 响应消息头 描述 X-Request-Id 请求ID。所有合法请求,都会返回此参数。 X-Apig-Latency 从API网关接收请求到后端返回消息头的用时。仅在请求消息头包含X-Apig-Mode: debug时,返回此参数。 X-Apig-Upstream-Latency 从API网关请求后端到后端返回消息头的用时。仅在请求消息头包含X-Apig-Mode: debug,且后端服务类型不为Mock时,返回此参数。 X-Apig-RateLimit-api API流量控制信息。 示例:remain:9,limit:10,time:10 second 仅在请求消息头包含X-Apig-Mode: debug,且API配置了API流量控制时,返回此参数。 X-Apig-RateLimit-user 用户流量限制信息。 示例:remain:9,limit:10,time:10 second 仅在请求消息头包含X-Apig-Mode: debug,且API配置了用户流量限制时,返回此参数 X-Apig-RateLimit-app 凭据流量限制信息。 示例:remain:9,limit:10,time:10 second 仅在请求消息头包含X-Apig-Mode: debug,且API配置了凭据流量限制时,返回此参数。 X-Apig-RateLimit-ip 源IP流量限制信息。 示例:remain:9,limit:10,time:10 second 仅在请求消息头包含X-Apig-Mode: debug,且API配置了源IP流量限制时,返回此参数。 X-Apig-RateLimit-api-allenv API默认流控信息。 示例:remain:199,limit:200,time:1 second 仅在请求消息头包含X-Apig-Mode: debug时,返回此参数。 X-Apig-count 请求经过APIG的总次数。 经过APIG调用的合法请求都会返回此参数,当X-Apig-count请求头取值大于10时,会报错APIG.0612。 父主题: 调用API
-
x-apigateway-access-control 含义:引用访问控制策略。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/path': get: x-apigateway-access-control: 'customAccessControlName' 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-access-control 否 String 访问控制策略。 父主题: APIG的API设计文件扩展定义
-
API调用授权概述 使用APP认证方式的API,需要配置调用授权,把API授权给指定凭据。API调用者在调用API时,可以通过凭据的Key和Secret进行安全认证,也可以通过AppCode进行简易认证。 配置APIG的API认证凭据 在API网关中创建一个凭据,生成密钥对(Key、Secret),在调用API时,API网关服务根据密钥对进行身份核对,完成鉴权。Key唯一且不可重置,支持重置Secret。 配置APIG的API简易认证AppCode API配置简易认证模式后,在调用API时,API网关服务既可以根据AppCode进行简易认证,也可以根据密钥对进行鉴权。 父主题: 配置API调用授权(可选)
-
为策略绑定API 单击策略名称,进入策略详情。 在API列表区域选择环境后,单击“绑定API”。 筛选API分组以及发布环境,勾选所需的API。 支持通过API名称或标签筛选API,标签为创建API时定义的标签。 单击“确定”,绑定完成。 如果单个API不需要绑定此策略,单击API所在行的“解绑”。 如果批量API不需要绑定此策略,则勾选待解绑的API,单击列表上方“解绑”。最多同时解绑1000个API。
-
x-apigateway-access-controls.policy 含义:访问控制策略定义。 作用域:x-apigateway-access-controls 示例: x-apigateway-access-controls: customAccessControlName: acl-type: "DENY" entity-type: "IP" value: 127.0.0.1,192.168.0.1/16 表1 参数说明 参数 是否必选 类型 说明 acl-type 是 String 访问控制行为,支持PERMIT、DENY entity-type 是 String 访问控制对象,仅支持IP value 是 String 访问控制策略值,多个值以“,”间隔 父主题: APIG的API设计文件扩展定义
-
使用限制 单账号跟踪的事件可以通过 云审计 控制台查询。多账号的事件只能在账号自己的事件列表页面去查看,或者到组织追踪器配置的OBS桶中查看,也可以到组织追踪器配置的 CTS /system日志流下面去查看。 用户通过云审计控制台只能查询最近7天的操作记录。如果需要查询超过7天的操作记录,您必须配置转储到 对象存储服务 (OBS)或 云日志 服务(LTS),才可在OBS桶或LTS日志组里面查看历史事件信息。否则,您将无法追溯7天以前的操作记录。 云上操作后,1分钟内可以通过云审计控制台查询管理类事件操作记录,5分钟后才可通过云审计控制台查询数据类事件操作记录。 CTS新版事件列表不显示数据类审计事件,您需要在旧版事件列表查看数据类审计事件。
-
x-apigateway-match-mode 含义:API网关定义的API请求URL的匹配模式,支持NORMAL和SWA。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/path': get: x-apigateway-match-mode: 'SWA' 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-match-mode 是 String API匹配模式,支持SWA和NORMAL。 SWA:前缀匹配,如“/prefix/foo”和“/prefix/bar”都会被“/prefix ”匹配,但“/prefixpart”却不会被匹配。 NORMAL:绝对匹配。 父主题: APIG的API设计文件扩展定义
-
x-apigateway-cors 含义:API网关定义的API请求是否支持跨域,boolean类型。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/path': get: x-apigateway-cors: true 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-cors 是 boolean 是否支持开启跨域请求的标识。 true:支持 false:不支持 开启跨域访问的API请求,响应会增加如下头域: 头域名称 头域值 描述 Access-Control-Max-Age 172800 预检响应最大缓存时间 单位:s Access-Control-Allow-Origin * 允许任何域。 Access-Control-Allow-Headers X-Sdk-Date,X-Sdk-Nonce,X-Proxy-Signed-Headers,X-Sdk-Content-Sha256,X-Forwarded-For,Authorization,Content-Type,Accept,Accept-Ranges,Cache-Control,Range 正式请求允许的头域 Access-Control-Allow-Methods GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH 正式请求允许的方法 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend.mockEndpoints 含义:API网关定义的MOCK类型API后端服务定义。 作用域:x-apigateway-backend 示例: paths: '/users/{userId}': get: produces: - "application/json" parameters: - name: "X-Auth-Token" description: "认证token" type: "string" in: "header" required: true responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "MOCK" mockEndpoints: result-content: "mocked" 表1 参数说明 参数 是否必选 类型 说明 result-content 是 String MOCK返回结果 父主题: APIG的API设计文件扩展定义
-
APIG的API错误码说明 当调用API时,可能遇到下表中的错误码。如果遇到“APIGW”开头的错误码,请参见API网关错误码进行处理。 通过APIG接口管理API,发生错误时,产生的错误码请参考错误码。 使用APIG错误码时,请以错误码(如APIG.0101)为准,错误信息并非固定不变,有时会对错误信息进行优化修改。 表1 错误码 错误码 错误信息 HTTP状态码 语义 解决方案 APIG.0101 The API does not exist or has not been published in the environment. 404 API不存在或未发布到环境 检查调用API所使用的域名、请求方法、路径和创建的API是否一致;检查API是否发布,如果发布到非生产环境,检查请求X-Stage头是否为发布的环境名;检查调用API使用的域名是否已经绑定到API所在的分组 APIG.0101 The API does not exist. 404 API请求方法不存在 检查API请求方法是否与API定义的方法相同 APIG.0103 The backend does not exist. 500 无法找到后端 联系技术支持 APIG.0104 The plug-ins do not exist. 500 无法找到插件配置 联系技术支持 APIG.0105 The backend configurations do not exist. 500 无法找到后端配置 联系技术支持 APIG.0106 Orchestration error. 400 编排错误 检查API配置的前后端参数是否合理 APIG.0107 The custom lua script encountered an unexpected error 500 Lua脚本发生未知错误 联系技术支持 APIG.0201 API request error. 400 请求格式不合法 使用合法的请求 APIG.0201 Request entity too large. 413 请求body过大(大于12M) 减小请求body大小 APIG.0201 Request URI too large. 414 请求URI过大(大于32K) 减小请求URI大小 APIG.0201 Request headers too large. 494 请求头过大(单个请求头大于32K或所有请求头总长度大于128K) 减小请求头大小 APIG.0201 Backend unavailable. 502 后端不可用 检查API配置的后端地址是否可用 APIG.0201 Backend timeout. 504 后端超时 增大超时时间或缩小后端的处理时间 APIG.0201 An unexpected error occurred 500 内部错误 联系技术支持 APIG.0202 Backend unavailable 502 后端不可用 检查API配置的后端请求协议是否与后端服务请求协议一致 APIG.0203 Backend timeout 504 后端超时 增大超时时间或缩小后端的处理时间 APIG.0204 SSL protocol is not supported: TLSv1.1 400 SSL协议版本不支持 使用支持的SSL协议版本 APIG.0205 Verify client certificate failed 400 客户端证书校验失败 检查客户端证书是否正确 APIG.0301 Incorrect IAM authentication information. 401 IAM认证信息错误 检查token是否正确 APIG.0302 The IAM user is not authorized to access the API. 403 IAM用户不允许访问API 检查用户是否被黑白名单限制 APIG.0303 Incorrect app authentication information. 401 APP认证信息错误 检查请求的方法、路径、查询参数、请求体和签名使用的方法、路径、查询参数、请求体是否一致;检查客户端机器时间是否正确。请参考使用APP认证调用API检查签名代码的问题 APIG.0304 The app is not authorized to access the API. 403 APP不允许访问API 检查APP是否授权访问API APIG.0305 Incorrect authentication information. 401 认证信息错误 检查认证信息是否正确 APIG.0306 API access denied. 403 不允许访问API 检查是否授权访问API APIG.0307 The token must be updated. 401 token需要更新 重新从IAM获取token APIG.0308 The throttling threshold has been reached. 429 超出流控值限制 等待流控刷新后访问。如果触发调试域名的单日请求数上限,请绑定独立域名 APIG.0310 The project is unavailable. 403 project不可使用 使用其他project访问 APIG.0311 Incorrect debugging authentication information. 401 调试认证信息错误 联系技术支持 APIG.0312 Incorrect third-party authentication information,auth fail 401 第三方认证信息错误,认证失败 检查身份信息是否正确 APIG.0313 Incorrect third-party authentication information,identities error 401 第三方认证信息错误,身份错误 检查请求中身份信息与第三方认证插件中身份来源设置是否一致 APIG.0314 Incorrect third-party authentication information,access deny 403 第三方认证信息错误,访问拒绝 联系技术支持确认请求来源是否为业务请求,如果是,则提高第三方认证插件的防爆力拦截阈值以解决 APIG.0401 Unknown client IP address. 403 无法识别客户端IP地址 联系技术支持 APIG.0402 The IP address is not authorized to access the API. 403 IP地址不允许访问 检查IP地址是否被黑白名单限制 APIG.0404 Access to the backend IP address has been denied. 403 后端IP不允许访问 后端IP地址或后端域名对应的IP地址不允许访问 APIG.0405 The app is not accessed from a trusted IP address. 403 未从受信任的IP地址访问应用程序 检查源IP是否在访问控制策略中配置了允许或者拒绝 APIG.0501 The app quota has been used up. 405 APP已经超出配额 或云市场调用次数用完 购买APP配额 或重新购买云市场调用次数 APIG.0502 The app has been frozen. 405 APP被冻结 余额不足 APIG.0601 Internal server error. 500 内部错误 联系技术支持 APIG.0602 Bad request. 400 非法请求 检查请求是否合法 APIG.0605 Domain name resolution failed. 500 域名解析失败 检查域名拼写,以及域名是否绑定了正确的后端地址 APIG.0606 Failed to load the API configurations. 500 未加载API配置 联系技术支持 APIG.0607 The following protocol is supported: {xxx} 400 协议不被允许,允许的协议是xxx。 注意:xxx以实际响应中的内容为准。 改用支持的协议(HTTP/HTTPS)访问 APIG.0608 Failed to obtain the admin token. 500 无法获取管理账户 联系技术支持 APIG.0609 The VPC backend does not exist. 500 找不到负载后端 联系技术支持 APIG.0610 No backend available. 502 没有可连接的后端 检查所有后端是否可用,如调用信息与实际配置是否一致 APIG.0611 The backend port does not exist. 500 后端端口未找到 联系技术支持 APIG.0612 An API cannot call itself. 500 API调用自身 修改API后端配置,递归调用层数不能超过10层 APIG.0613 The IAM service is currently unavailable. 503 IAM服务暂时不可用 联系技术支持 APIG.0615 Incorrect third-party authentication VPC information 500 获取第三方鉴权负载通道节点失败 检查第三方认证的负载通道配置是否正确 APIG.0616 Incorrect third-party authentication request information 500 连接第三方鉴权服务失败 检查第三方认证服务是否正常 APIG.0617 Incorrect third-party authentication response information 500 获取第三方鉴权服务响应失败 检查第三方认证服务是否正常 APIG.0705 Backend signature calculation failed. 500 计算后端签名失败 联系技术支持 APIG.0802 The IAM user is forbidden in the currently selected region 403 该IAM用户在当前region中被禁用 联系技术支持 APIG.2102 PublicKey is null 400 签名密钥未找到 联系技术支持 APIG.2201 Appkey or SecretKey is invalid 400 Appkey或SecretKey不合法 检查请求的Appkey或SecretKey是否正确 APIG.2202 Refresh token is invalid 400 Refresh token不合法 检查Refresh token是否正确 APIG.2203 Access token is invalid 400 Access token不合法 检查Access token是否正确 APIG.2204 ContentType invalid 400 ContentType不合法 检查ContentType是否正确 APIG.2205 Auth parameter invalid 400 认证参数不合法 检查认证参数是否正确 APIG.2206 Auth method invalid 400 认证方法不合法 检查认证方法是否正确 APIG.2208 The length of through_data is out of range 400 through_data超长 through_data长度上限为300,根据实际情况调整through_data内容 APIG.2209 The value of grant_type is not in enum List 400 grant_type的值不合法 grant_type只支持client_credentials、refresh_token,根据实际情况修改 APIG.2210 Lack of grant_type 400 缺少授权类型 添加grant_type APIG.2211 Lack of client_id 400 缺少客户端ID 添加客户端ID APIG.2212 Lack of client_secret 400 缺少客户端密钥 添加客户端密钥 APIG.2213 Lack of refresh_token 400 缺少refresh token 联系技术支持 APIG.1001 Refresh token is expired 401 Refresh token过期 重新获取refresh token APIG.1002 Access token is expired 401 Access token过期 重新获取access token APIG.1003 App not match refresh token 401 App与refresh token不匹配 检查client_id是否正确 APIG.1004 App not exist 401 App不存在 检查access token是否正确 APIG.1009 AppKey or AppSecret is invalid 400 AppKey或AppSecret不合法 检查请求的AppKey或AppSecret是否正确 父主题: 调用API
-
x-apigateway-access-controls 含义:访问控制策略名称与关联策略映射。 作用域:Swagger Object 示例: x-apigateway-access-controls: customAccessControlName: acl-type: "DENY" entity-type: "IP" value: 127.0.0.1,192.168.0.1/16 表1 参数说明 参数 是否必选 类型 说明 customAccessControlName 否 x-apigateway-access-controls.policy 指定名称的访问控制策略。 要使用该策略,将x-apigateway-access-control属性值引用为该策略名称。 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend-policies 含义:API网关定义的API后端策略。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/users/{userId}': get: produces: - "application/json" responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "backend endpoint type" x-apigateway-backend-policies: - type: "backend endpoint type" name: "backend policy name" conditions: - type: "equal/enum/pattern", value: "string", origin: "source/request_parameter", parameter_name: "string" 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-backend-policies 否 x-apigateway-backend-policies 策略后端 type 是 String 后端服务类型,支持HTTP、HTTP-VPC、FUNCTION、MOCK name 是 String 后端策略名称 parameters 否 x-apigateway-backend.parameters 后端参数定义 httpEndpoints 否 x-apigateway-backend.httpEndpoints HTTP类型服务定义 httpVpcEndpoints 否 x-apigateway-backend.httpVpcEndpoints HTTP-VPC类型服务定义 functionEndpoints 否 x-apigateway-backend.functionEndpoints FUNCTION类型服务定义 mockEndpoints 否 x-apigateway-backend.mockEndpoints MOCK类型服务定义 conditions 是 x-apigateway-backend-policies.conditions 策略条件数组 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend 含义:API网关定义的API后端服务定义。 作用域:Operation Object(2.0)/Operation Object(3.0) 示例: paths: '/users/{userId}': get: produces: - "application/json" responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "backend endpoint type" 表1 参数说明 参数 是否必选 类型 说明 x-apigateway-backend 是 String API后端服务定义 type 是 String 后端服务类型,支持HTTP、HTTP-VPC、FUNCTION、MOCK parameters 否 x-apigateway-backend.parameters 后端参数定义 httpEndpoints 否 x-apigateway-backend.httpEndpoints HTTP类型后端服务定义 httpVpcEndpoints 否 x-apigateway-backend.httpVpcEndpoints HTTP-VPC类型后端服务定义 functionEndpoints 否 x-apigateway-backend.functionEndpoints FUNCTION类型后端服务定义 mockEndpoints 否 x-apigateway-backend.mockEndpoints MOCK类型后端服务定义 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend-policies.conditions 含义:API网关定义的API后端策略条件。 作用域:x-apigateway-backend-policies 示例: paths: '/users/{userId}': get: produces: - "application/json" responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "backend endpoint type" x-apigateway-backend-policies: - type: "backend endpoint type" name: "backend policy name" conditions: - type: "equal/enum/pattern", value: "string", origin: "source/request_parameter", parameter_name: "string" 表1 参数说明 参数 是否必选 类型 说明 type 是 String 策略条件类型,支持equal、enum、pattern value 是 String 策略条件值 origin 是 String 策略条件输入来源,支持source、request parameter 否 String 策略条件输入来源为request时,请求入参的名称 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend.functionEndpoints 含义:API网关定义的FUNCTION类型API后端服务定义。 作用域:x-apigateway-backend 示例: paths: '/users/{userId}': get: produces: - "application/json" parameters: - name: "X-Auth-Token" description: "认证token" type: "string" in: "header" required: true responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "FUNCTION" functionEndpoints: version: "v1" function-urn: "" invocation-type: "synchronous" timeout: 30000 表1 参数说明 参数 是否必选 类型 说明 function-urn 是 String 函数URN地址 version 是 String 函数版本 invocation-type 是 String 函数调用类型,支持async、sync timeout 否 Number 函数超时时间,单位毫秒,缺省值为5000,取值范围为1 ~ 60000 父主题: APIG的API设计文件扩展定义
-
x-apigateway-backend.parameters 含义:API网关定义的API后端参数定义。 作用域:x-apigateway-backend 示例: paths: '/users/{userId}': get: produces: - "application/json" parameters: - name: "X-Auth-Token" description: "认证token" type: "string" in: "header" required: true - name: "userId" description: "用户名" type: "string" in: "path" required: true responses: default: description: "default response" x-apigateway-request-type: "public" x-apigateway-backend: type: "HTTP" parameters: - name: "userId" value: "userId" in: "query" origin: "REQUEST" description: "用户名" - name: "X-Invoke-User" value: "apigateway" in: "header" origin: "CONSTANT" description: "调用者" 表1 参数说明 参数 是否必选 类型 说明 name 是 String 参数名称,由字母、数字、下划线、连线、点组成,以字母开头,最长32字节 header位置的参数名称不区分大小写 value 是 String 参数值,当参数来源为REQUEST时,值为请求参数名称 in 是 String 参数位置,支持header、query、path origin 是 String 参数映射来源,支持REQUEST、CONSTANT description 否 String 参数含义描述 父主题: APIG的API设计文件扩展定义
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- ...
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333
推荐文章