云服务器内容精选

  • 应用环境变量概述 环境变量是指在系统或用户应用程序中设置的一些参数,在代码里调用接口去获取环境变量的值。在部署时通过环境变量去指定参数配置,而不用在代码中指定,使部署具有灵活性。应用下添加的环境变量,属于全局环境变量,对此应用下的所有组件都起作用。 如果您需要对应用下特定的组件添加环境变量: 容器环境部署组件,请参考设置组件环境变量。 虚拟机环境部署组件,请参考添加组件环境变量。 父主题: 管理应用环境变量
  • 响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 variable_value String 变量值支持英文字母、数字、英文格式的下划线、中划线,斜线(/)、点、冒号,1 ~ 255个字符。 env_id String 环境编号 最小长度:1 最大长度:65 group_id String API分组编号 最小长度:1 最大长度:65 variable_name String 变量名,支持英文字母、数字、英文格式的下划线、中划线,必须以英文字母开头,3~32个字符。在API定义中等于#Name的值#部分(区分大小写),发布到环境里的API被变量值替换。 说明: 中文字符必须为UTF-8或者unicode编码。 id String 环境变量编号 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 201 Created { "variable_value" : "192.168.1.5", "env_id" : "7a1ad0c350844ee69479b47df9a881cb", "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "id" : "25054838a624400bbf2267cf5b3a3f70", "variable_name" : "address" } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:instance_id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3003", "error_msg" : "The instance does not exist;id:f0fa1789-3b76-433b-a787-9892951c620ec" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 功能介绍 将API发布到不同的环境后,对于不同的环境,可能会有不同的环境变量,比如,API的服务部署地址,请求的版本号等。 用户可以定义不同的环境变量,用户在定义API时,在API的定义中使用这些变量,当调用API时,API网关会将这些变量替换成真实的变量值,以达到不同环境的区分效果。 环境变量定义在API分组上,该分组下的所有API都可以使用这些变量。 环境变量的变量名称必须保持唯一,即一个分组在同一个环境上不能有两个同名的变量。 环境变量区分大小写,即变量ABC与变量abc是两个不同的变量。 设置了环境变量后,使用到该变量的API的调试功能将不可使用。 定义了环境变量后,使用到环境变量的地方应该以对称的#标识环境变量,当API发布到相应的环境后,会对环境变量的值进行替换,如:定义的API的URL为:https://#address#:8080,环境变量address在RELEASE环境上的值为:192.168.1.5,则API发布到RELEASE环境后的真实的URL为:https://192.168.1.5:8080。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 variable_value 是 String 变量值支持英文字母、数字、英文格式的下划线、中划线,斜线(/)、点、冒号,1 ~ 255个字符。 env_id 是 String 环境编号 最小长度:1 最大长度:65 group_id 是 String API分组编号 最小长度:1 最大长度:65 variable_name 是 String 变量名,支持英文字母、数字、英文格式的下划线、中划线,必须以英文字母开头,3~32个字符。在API定义中等于#Name的值#部分(区分大小写),发布到环境里的API被变量值替换。 说明: 中文字符必须为UTF-8或者unicode编码。
  • 响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 variable_value String 变量值支持英文字母、数字、英文格式的下划线、中划线,斜线(/)、点、冒号,1 ~ 255个字符。 env_id String 环境编号 最小长度:1 最大长度:65 group_id String API分组编号 最小长度:1 最大长度:65 variable_name String 变量名,支持英文字母、数字、英文格式的下划线、中划线,必须以英文字母开头,3~32个字符。在API定义中等于#Name的值#部分(区分大小写),发布到环境里的API被变量值替换。 说明: 中文字符必须为UTF-8或者unicode编码。 id String 环境变量编号 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 201 Created { "variable_value" : "192.168.1.5", "env_id" : "7a1ad0c350844ee69479b47df9a881cb", "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "id" : "25054838a624400bbf2267cf5b3a3f70", "variable_name" : "address" } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:variable_name" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3003", "error_msg" : "Environment 7a1ad0c350844ee69479b47df9a881cb does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 功能介绍 将API发布到不同的环境后,对于不同的环境,可能会有不同的环境变量,比如,API的服务部署地址,请求的版本号等。 用户可以定义不同的环境变量,用户在定义API时,在API的定义中使用这些变量,当调用API时,服务集成会将这些变量替换成真实的变量值,以达到不同环境的区分效果。 环境变量定义在API分组上,该分组下的所有API都可以使用这些变量。 1.环境变量的变量名称必须保持唯一,即一个分组在同一个环境上不能有两个同名的变量 2.环境变量区分大小写,即变量ABC与变量abc是两个不同的变量 3.设置了环境变量后,使用到该变量的API的调试功能将不可使用。 4.定义了环境变量后,使用到环境变量的地方应该以对称的#标识环境变量,当API发布到相应的环境后,会对环境变量的值进行替换,如:定义的API的URL为:https://#address#:8080,环境变量address在RELEASE环境上的值为:192.168.1.5,则API发布到RELEASE环境后的真实的URL为:https://192.168.1.5:8080。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 variable_value 是 String 变量值支持英文字母、数字、英文格式的下划线、中划线,斜线(/)、点、冒号,1 ~ 255个字符。 env_id 是 String 环境编号 最小长度:1 最大长度:65 group_id 是 String API分组编号 最小长度:1 最大长度:65 variable_name 是 String 变量名,支持英文字母、数字、英文格式的下划线、中划线,必须以英文字母开头,3~32个字符。在API定义中等于#Name的值#部分(区分大小写),发布到环境里的API被变量值替换。 说明: 中文字符必须为UTF-8或者unicode编码。
  • PYTHONPATH变量使用 PYTHONPATH环境变量指定了Python解释器应该查找模块的额外位置。在CodeArts IDE中,“PYTHONPATH”可以通过终端设置(“terminal.integrated.env.*”)、“.env”文件或者同时使用这两种方法来设置。 当使用终端设置时,“PYTHONPATH”会影响在终端中运行的任何工具,以及CodeArts IDE通过终端执行的如调试等的任何操作。然而,如果CodeArts IDE执行的操作不是通过终端进行的,比如使用linter或格式化器时,这个设置将不会影响模块的查找。 当使用“.env”文件设置“PYTHONPATH”时,它会影响CodeArts IDE代表您执行的所有操作以及调试器执行的操作,但不会影响在终端中运行的工具。 一个使用“PYTHONPATH”的例子是,如果您有一个包含源代码的“src”文件夹和一个包含测试的“tests”文件夹。在运行测试时,这些测试通常无法访问“src”中的模块,除非您硬编码相对路径。 为了解决这个问题,您可以在CodeArts IDE工作区内创建一个“.env”文件,并将“src”的路径添加到“PYTHONPATH”中。 PYTHONPATH=src 然后在 “settings.json” 文件中设置 “python.envFile” ,指向您刚刚创建的 “.env” 文件。如果 “.env” 文件位于项目根目录下,则 “settings.json” 应设置如下: "python.envFile": "${workspaceFolder}/.env" PYTHONPATH的值可以包含由 “os.pathsep” 分隔的多个位置:Windows上为分号 (“;”),Linux 上为冒号 (“:”)。无效路径将被忽略。如果您发现 PYTHONPATH的值未按预期工作,请确保在操作系统的位置间使用正确的分隔符。在Windows上使用冒号分隔位置,或在Linux上使用分号分隔位置会导致 PYTHONPATH值无效,该值将被忽略。 PYTHONPATH不指定Python解释器本身的路径。有关PYTHONPATH的其他信息,请阅读 PYTHONPATH 文档。 父主题: 环境变量
  • 环境变量定义文件 环境变量定义文件是一个以“environment_variable=value”为形式,键值对构成的纯文本文件,其中“#”用于注释。该文件不支持多行值,但值可以引用系统中或文件中先前已定义的其他任何环境变量。有关更多信息,请参阅变量替换。环境变量定义文件可用于调试和工具执行(包括linters、格式化器、代码补全和测试工具)等场景,但不应用于终端。 默认情况下,CodeArts IDE会在当前项目文件夹中查找并加载名为“.env”的文件,并应用这些定义。这是由用户设置中的默认条目“"python.envFile": "${workspaceFolder}/.env"”来决定的。你可以更改“python.envFile”设置来使用不同的定义文件。 例如,在开发Web应用程序时,你可以使用不同的定义文件来存储不同的URL和其他设置,而不是直接在代码中设置。这样您就可以轻松地在开发服务器和生产服务器之间切换,如: dev.env file # dev.env - development configuration # API endpoint MYPROJECT_APIENDPOINT=https://my.domain.com/api/dev/ # Variables for the database MYPROJECT_DBURL=https://my.domain.com/db/dev MYPROJECT_DBUSER=devadmin MYPROJECT_DBPASSWORD=!dfka**213= prod.env file # prod.env - production configuration # API endpoint MYPROJECT_APIENDPOINT=https://my.domain.com/api/ # Variables for the database MYPROJECT_DBURL=https://my.domain.com/db/ MYPROJECT_DBUSER=coreuser MYPROJECT_DBPASSWORD=kKKfa98*11@ 然后,您可以将 “python.envFile” 设置设置为 “${workspaceFolder}/prod.env”,然后将调试配置中的 “envFile” 属性设置为 “${workspaceFolder}/dev.env”。 当使用多种方法指定环境变量时,有以下的优先顺序。 “launch.json”中直接定义的“env” 变量会覆盖“launch.json”中 “envFile”设置中定义的变量,以及“python.envFile”设置指定的“.env”文件包含的环境变量。 “launch.json”的“envFile”设置中定义的环境变量会覆盖“python.envFile”设置指定的“.env”文件包含的环境变量。 父主题: 环境变量
  • 响应消息 表3 参数说明 参数 类型 说明 id String 环境变量的编号 env_id String 环境编号 group_id String API分组编号 variable_name String 变量名 variable_value String 变量值 响应消息样例: {"id": "104185e5-3e8f-4c63-a7e5-ef4117bf870c","env_id": "cca3616a-f368-4b32-9064-b2a631cb3eeb","group_id": "73c58022-f20d-495a-a188-85d718647f09","variable_name": "address","variable_value": "192.168.1.5"}
  • 对象模型 本节介绍环境变量的对象模型,如下表所示: “操作类型”用于描述字段的属性,表示对应字段的值可进行的操作: C:创建;U:更新;R:读取。 “是否必选”列表示对于“操作类型”为“C”的创建操作,对应字段是否为必选字段。 表1 环境变量对象模型 参数 类型 说明 操作类型 是否必选 id String 环境变量编号 R - env_id String 环境编号 CR 是 group_id String API分组编号 CR 是 variable_name String 变量名 CR 是 variable_value String 变量值 CR 是 父主题: 环境变量管理(待下线)