文档目录

发送文件到云主机(UploadFileToVm)

API请求

URLs
POST zstack/v1/upload-file
Headers
Authorization: OAuth the-session-uuid
Body
{
  "params": {
    "vmInstanceUuids": [
      "358310f6b6b23b9f9bdcf8d34b03719f"
    ],
    "fileContent": "ZWNobyBoZWxsb3dvcmxkCg\u003d\u003d",
    "remotePath": "/var/lib/zstack/uploadfile"
  },
  "systemTags": [],
  "userTags": []
}
Note: 上述示例中systemTagsuserTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"vmInstanceUuids":["358310f6b6b23b9f9bdcf8d34b03719f"],"fileContent":"ZWNobyBoZWxsb3dvcmxkCg==","remotePath":"/var/lib/zstack/uploadfile"}}' http://localhost:8080/zstack/v1/upload-file
参数列表
名字 类型 位置 描述 可选值 起始版本
vmInstanceUuids List body(包含在params结构中) 要上传的云主机列表 5.2.0
fileContent String body(包含在params结构中) 要上传的文件内容,使用Base64加密 5.2.0
remotePath String body(包含在params结构中) 要上传的绝对路径,包含有文件名 5.2.0
systemTags (可选) List body 系统标签 5.2.0
userTags (可选) List body 用户标签 5.2.0

API返回

该API成功时返回一个空的JSON结构{},出错时返回的JSON结构包含一个error字段,例如:
{
	"error": {
		"code": "SYS.1001",
		"description": "A message or a operation timeout",
		"details": "Create VM on KVM timeout after 300s"
	}
}

SDK示例

Java SDK
UploadFileToVmAction action = new UploadFileToVmAction();
action.vmInstanceUuids = asList("358310f6b6b23b9f9bdcf8d34b03719f");
action.fileContent = "ZWNobyBoZWxsb3dvcmxkCg==";
action.remotePath = "/var/lib/zstack/uploadfile";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
UploadFileToVmAction.Result res = action.call();
Python SDK
UploadFileToVmAction action = UploadFileToVmAction()
action.vmInstanceUuids = [358310f6b6b23b9f9bdcf8d34b03719f]
action.fileContent = "ZWNobyBoZWxsb3dvcmxkCg=="
action.remotePath = "/var/lib/zstack/uploadfile"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
UploadFileToVmAction.Result res = action.call()
开发手册 | 5.5.30 | ZStack Cloud · ZCF | ZStack 资源中心