使用 Postman
下面是针对 IBM Cloud® Object Storage REST API 的基本 Postman
设置。 在 API 参考中可以找到有关存储区或对象的更多详细信息。
使用 Postman
将假定您在一定程度上熟悉 Object Storage 以及 服务凭证 或控制台中的必要信息,如 IBM Cloud Object Storage 入门中所示。 如果任何术语或变量不熟悉,那么可以在 常见问题解答 中找到这些术语或变量。
个人可标识信息 (PII): 当 命名 存储区或对象时,请勿使用任何可以通过名称,位置或任何其他方法来标识任何用户 (自然人) 的信息。
REST API 客户机概述
与 REST API 进行交互并不像使用标准因特网浏览器那样简单。 简单浏览器不允许对 URL 请求执行任何操作。 REST API 客户机可以帮助快速组合简单和复杂的 HTTP 请求。
先决条件
- IBM Cloud 帐户
- 已创建 Cloud Storage 资源 (轻量套餐正常工作)
- 已安装和配置IBM Cloud COS CLI
- Cloud Storage 的服务实例标识
- IAM (Identity and Access Management) 令牌
- COS 存储区的端点
创建存储区
- 启动 Postman。
- 在新建选项卡中,选择
PUT
。 - 在地址栏中输入端点,然后添加新存储区的名称。 a. 存储区名称必须在所有存储区中唯一,因此请选择比较具体的名称。
- 在类型菜单中,选择“不记名令牌”。
- 在“令牌”框中,添加 IAM 令牌。
- 单击预览请求。 a. 您应该会看到确认消息,指出头已添加。
- 单击头选项卡,在其中应该会看到 Authorization 的现有条目。
- 添加密钥。 a. 键:
ibm-service-instance-id
b. 值:Cloud Storage 服务的资源实例标识。 - 单击“发送”。
- 您将收到状态
200 OK
消息。
创建文本文件对象
- 通过单击加号 (+) 图标来创建选项卡。
- 从列表中选择
PUT
。 - 在地址栏中,输入包含先前部分中存储区名称和文件名的端点地址。
- 在“类型”列表中,选择“不记名令牌”。
- 在“令牌”框中,添加 IAM 令牌。
- 选择“主体”选项卡。
- 选择原始选项,并确保选择“文本”。
- 在提供的空白处输入文本。
- 单击“发送”。
- 您将收到状态
200 OK
消息。
列出存储区的内容
- 通过选择加号 (+) 图标来创建新的选项卡。
- 验证是否选择了列表中的
GET
。 - 在地址栏中,输入包含先前部分中存储区名称的端点地址。
- 在“类型”列表中,选择“不记名令牌”。
- 在“令牌”框中,添加 IAM 令牌。
- 单击“发送”。
- 您将收到状态
200 OK
消息。 - 在“响应主体”部分中,会有一条 XML 消息,其中包含存储区中的文件列表。
使用样本集合
此 Postman 集合是作为试用 API 的起点提供的,它不适用于生产用途:
{
"info": {
"_postman_id": "56d99641-9ad6-4218-b3d4-18ac8f3361e0",
"name": "IBM COS",
"description": "IBM COS samples",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "Retrieve list of buckets",
"event": [
{
"listen": "test",
"script": {
"id": "d67afcf2-6d35-4a2a-9542-b8d5df78eded",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"ListAllMyBucketsResult\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
}
],
"body": {},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
]
}
},
"response": []
},
{
"name": "Create new bucket",
"event": [
{
"listen": "test",
"script": {
"id": "3cebb9d7-90ee-42c0-9154-b26bd229e179",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
]
},
"description": "Create new bucket"
},
"response": []
},
{
"name": "Create new text file",
"event": [
{
"listen": "test",
"script": {
"id": "0a54c09b-0032-4933-ae99-81911935cb4d",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected header\", function() {",
" pm.response.to.have.header(\"ETag\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "Content-Type",
"value": "application/x-www-form-urlencoded"
}
],
"body": {
"mode": "raw",
"raw": "This is test data for the text file."
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testfile.txt",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testfile.txt"
]
},
"description": "Create a new text file in the bucket"
},
"response": []
},
{
"name": "Create new binary file",
"event": [
{
"listen": "test",
"script": {
"id": "80e3e8bd-3fb5-4874-a638-510cf5b8c872",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected header\", function() {",
" pm.response.to.have.header(\"ETag\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "Content-Type",
"value": "image/jpeg"
}
],
"body": {
"mode": "file",
"file": {}
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testimage.jpg",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testimage.jpg"
]
},
"description": "Create a new binary (image) file in the bucket"
},
"response": []
},
{
"name": "Retrieve list of files from bucket",
"event": [
{
"listen": "test",
"script": {
"id": "aae11dfd-89e5-464d-a6da-44c05652ccec",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"ListBucketResult\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Retrieve list of files from bucket (filter by prefix)",
"event": [
{
"listen": "test",
"script": {
"id": "aae11dfd-89e5-464d-a6da-44c05652ccec",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"ListBucketResult\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?prefix=new",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "prefix",
"value": "new"
}
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Retrieve text file",
"event": [
{
"listen": "test",
"script": {
"id": "58817cc7-7d15-45a9-b372-7712d2fd389d",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected body content\", function() {",
" pm.expect(pm.response.text()).to.include(\"This is test data\");",
"});",
"",
"pm.test(\"Response contains expected header\", function() {",
" pm.response.to.have.header(\"ETag\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testfile.txt",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testfile.txt"
]
},
"description": "Retrieving a file from bucket"
},
"response": []
},
{
"name": "Retrieve binary file",
"event": [
{
"listen": "test",
"script": {
"id": "db6fa324-080a-43bc-a301-32e70d9bbd65",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected header\", function() {",
" pm.response.to.have.header(\"ETag\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testimage.jpg",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testimage.jpg"
]
},
"description": "Retrieve a binary file from the bucket"
},
"response": []
},
{
"name": "Retrieve list of failed multipart uploads",
"event": [
{
"listen": "test",
"script": {
"id": "835bcaf6-6e7d-4fa9-883e-1a5c5538ac7e",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"ListMultipartUploadsResult\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?uploads=",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "uploads",
"value": ""
}
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Retrieve list of failed multipart uploads (filter by name)",
"event": [
{
"listen": "test",
"script": {
"id": "835bcaf6-6e7d-4fa9-883e-1a5c5538ac7e",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"ListMultipartUploadsResult\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?uploads=&prefix=my",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "uploads",
"value": ""
},
{
"key": "prefix",
"value": "my"
}
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Set CORS enabled bucket",
"event": [
{
"listen": "test",
"script": {
"id": "5cf3d531-13f1-4cf6-a4fc-2f8d2d8e48af",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
},
{
"key": "Content-MD5",
"value": "GQmpTNpruOyK6YrxHnpj7g=="
}
],
"body": {
"mode": "raw",
"raw": "<CORSConfiguration>\n <CORSRule>\n <AllowedOrigin>http:www.ibm.com</AllowedOrigin>\n <AllowedMethod>GET</AllowedMethod>\n <AllowedMethod>PUT</AllowedMethod>\n <AllowedMethod>POST</AllowedMethod>\n </CORSRule>\n</CORSConfiguration>"
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?cors=",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "cors",
"value": ""
}
]
}
},
"response": []
},
{
"name": "Retrieve bucket CORS config",
"event": [
{
"listen": "test",
"script": {
"id": "d9c0dce3-decd-4f3e-b5b1-e3f4a89f1283",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
"",
"pm.test(\"Response contains expected content\", function() {",
" pm.expect(pm.response.text()).to.include(\"CORSConfiguration\");",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?cors=",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "cors",
"value": ""
}
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Delete bucket CORS config",
"event": [
{
"listen": "test",
"script": {
"id": "83ce0bed-572f-4c16-b45f-67a7a9cc5550",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}?cors=",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
],
"query": [
{
"key": "cors",
"value": ""
}
]
},
"description": "Retrieve the list of files available in the bucket"
},
"response": []
},
{
"name": "Delete text file",
"event": [
{
"listen": "test",
"script": {
"id": "78b76a84-9562-4692-9634-e10912574a89",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});",
""
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testfile.txt",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testfile.txt"
]
},
"description": "Retrieving a file from bucket"
},
"response": []
},
{
"name": "Delete binary file",
"event": [
{
"listen": "test",
"script": {
"id": "a8363887-2b04-4deb-a75b-10220d30e856",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}/testimage.jpg",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}",
"testimage.jpg"
]
},
"description": "Retrieve a binary file from the bucket"
},
"response": []
},
{
"name": "Delete bucket",
"event": [
{
"listen": "test",
"script": {
"id": "3cebb9d7-90ee-42c0-9154-b26bd229e179",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}"
]
},
"description": "Create new bucket"
},
"response": []
},
{
"name": "Create new bucket (different storage class)",
"event": [
{
"listen": "test",
"script": {
"id": "5cf3d531-13f1-4cf6-a4fc-2f8d2d8e48af",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
},
{
"key": "Content-Type",
"value": "application/x-www-form-urlencoded"
}
],
"body": {
"mode": "raw",
"raw": "<CreateBucketConfiguration>\n\t<LocationConstraint>{{bucketlocationvault}}</LocationConstraint>\n</CreateBucketConfiguration>"
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}vault",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}vault"
]
}
},
"response": []
},
{
"name": "Delete bucket (different storage class)",
"event": [
{
"listen": "test",
"script": {
"id": "5cf3d531-13f1-4cf6-a4fc-2f8d2d8e48af",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}vault",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}vault"
]
}
},
"response": []
},
{
"name": "Create new bucket (key protect)",
"event": [
{
"listen": "test",
"script": {
"id": "5cf3d531-13f1-4cf6-a4fc-2f8d2d8e48af",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
},
{
"key": "ibm-sse-kp-encryption-algorithm",
"value": "AES256"
},
{
"key": "ibm-sse-kp-customer-root-key-crn",
"value": "{{rootkeycrn}}"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}kp",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}kp"
]
}
},
"response": []
},
{
"name": "Delete bucket (key protect)",
"event": [
{
"listen": "test",
"script": {
"id": "5cf3d531-13f1-4cf6-a4fc-2f8d2d8e48af",
"type": "text/javascript",
"exec": [
"pm.test(\"Request was successful\", function() {",
" pm.response.to.be.success; ",
"});"
]
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{iamtoken}}",
"type": "string"
}
]
},
"method": "DELETE",
"header": [
{
"key": "ibm-service-instance-id",
"value": "{{serviceid}}"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "https://{{endpoint-region}}cloud-object-storage.appdomain.cloud/{{bucket}}kp",
"protocol": "https",
"host": [
"{{endpoint-region}}",
"objectstorage",
"softlayer",
"net"
],
"path": [
"{{bucket}}kp"
]
}
},
"response": []
}
],
"event": [
{
"listen": "prerequest",
"script": {
"id": "08caf505-3991-4273-8027-db00d867680f",
"type": "text/javascript",
"exec": [
""
]
}
},
{
"listen": "test",
"script": {
"id": "6e61fa13-e3b9-42f0-8c38-9d3468748922",
"type": "text/javascript",
"exec": [
""
]
}
}
],
"variable": [
{
"id": "643d5480-e629-4e26-b244-1b3c3a85195a",
"key": "bucket",
"value": "jsaitocosbucketapitest41",
"type": "string",
"description": ""
},
{
"id": "7554e40a-f4d5-4938-972e-43b28ce52ad1",
"key": "serviceid",
"value": "crn:v1:bluemix:public:cloud-object-storage:global:a/1d524cd94a0dda86fd8eff3191340732:8888b05b-a143-4917-9d8e-9d5b326a1604::",
"type": "string",
"description": ""
},
{
"id": "f06bc8b2-3476-47a6-aacb-c603dd808310",
"key": "iamtoken",
"value": "eyJraWQiOiIyMDE3MTAzMC0wMDowMDowMCIsImFsZyI6IlJTMjU2In0.eyJpYW1faWQiOiJJQk1pZC01MFkxNjdNOFRZIiwiaWQiOiJJQk1pZC01MFkxNjdNOFRZIiwicmVhbG1pZCI6IklCTWlkIiwiaWRlbnRpZmllciI6IjUwWTE2N004VFkiLCJnaXZlbl9uYW1lIjoiSmFtZXMiLCJmYW1pbHlfbmFtZSI6IlNhaXRvIiwibmFtZSI6IkphbWVzIFNhaXRvIiwiZW1haWwiOiJKYW1lcy5TYWl0bzFAaWJtLmNvbSIsInN1YiI6IkphbWVzLlNhaXRvMUBpYm0uY29tIiwiYWNjb3VudCI6eyJic3MiOiIxZDUyNGNkOTRhMGRkYTg2ZmQ4ZWZmMzE5MTM0MDczMiJ9LCJpYXQiOjE1Mjg2MDk0ODIsImV4cCI6MTUyODYxMzA4MiwiaXNzIjoiaHR0cHM6Ly9pYW0uYmx1ZW1peC5uZXQvaWRlbnRpdHkiLCJncmFudF90eXBlIjoidXJuOmlibTpwYXJhbXM6b2F1dGg6Z3JhbnQtdHlwZTphcGlrZXkiLCJzY29wZSI6ImlibSBvcGVuaWQiLCJjbGllbnRfaWQiOiJieCIsImFjciI6MSwiYW1yIjpbInB3ZCJdfQ.iG5ey13QlXHu3OH81v8J5sduKv3NzSqCFng_DlpNglPo07K-nWst3O9o6iEJfm0AzJwYNTZqWVru1pjI-KcAPXFBe503DPIf6cYolAw4rarU5booW-pdzk8-R5HZ7MJK7b8sxJtm7PAilXVZvl5yFE-tJsFkeMH6XCIj_R9i6dwSemDBL3Juq79_x3KsgJGFg37p5f2vck1_7gR7nSb03m8m3mCvrrx7zGkLDuM8NXAVlwwxKcitwlG_UfEBwSbX3krF04zF2tFCpGkcWAnuaFdaVTOL6uaULxCi5BWHqzLXIPhAoyfnVGNv0TBJtyFcpJ1LdlsBmz7RS2fROlDf2w",
"type": "string",
"description": ""
},
{
"id": "dba24a46-e1df-4201-9a9b-f247fff22315",
"key": "endpoint-region",
"value": "s3.us-south",
"type": "string",
"description": ""
},
{
"id": "ca751949-eea0-4f36-9f58-aea1ed324cd5",
"key": "rootkeycrn",
"value": "crn:v1:bluemix:public:kms:us-south:a/1d524cd94a0dda86fd8eff3191340732:90b7a1db-0fe2-4de9-b90e-922c127ff530:key:0b43e36e-a863-40e2-b713-5caa2bf99288",
"type": "string",
"description": ""
},
{
"id": "e486732e-c9bc-4ec4-8bf9-04b66d513e5a",
"key": "bucketlocationvault",
"value": "us-south-vault",
"type": "string",
"description": ""
}
]
}
将集合导入到 Postman
- 在 Postman 中,单击右上角的导入。
- 使用以下任一方法导入集合文件:
- 在“导入”窗口中,将集合文件拖动到标注为将文件放在此处的窗口中。
- 单击“选择文件”按钮并浏览至相应文件夹,然后选择集合文件。
- IBM COS 现在会显示在“集合”窗口中。
- 展开“集合”可看到 20 个样本请求。
- 单击集合右侧的三个点图标以展开菜单,然后单击编辑。
- 编辑变量,以便与 Cloud Storage 环境相匹配。
bucket
- 输入要创建的新存储区的名称(存储区名称在 Cloud Storage 中必须唯一)。serviceid
- 输入 Cloud Storage 服务的 CRN。 此处提供了获取 CRN 的指示信息。iamtoken
- 输入 Cloud Storage 服务的 OAUTH 令牌。 此处提供了获取 OAUTH 令牌的指示信息。endpoint
- 输入 Cloud Storage 服务的区域端点。 从 IBM Cloud 仪表板 获取可用端点- 确保所选端点与 Key Protect 服务相匹配,以保证样本正确运行
rootkeycrn
- 在主 Key Protect 服务中创建的根密钥的 CRN。- CRN 类似于
crn:v1:bluemix:public:kms:us-south:a/3d624cd74a0dea86ed8efe3101341742:90b6a1db-0fe1-4fe9-b91e-962c327df531:key:0bg3e33e-a866-50f2-b715-5cba2bc93234
- 确保选择的 Key Protect 服务与端点的区域相匹配
- CRN 类似于
bucketlocationvault
- 为*创建新存储区(其他存储类)*API 请求输入用于创建存储区的位置约束值。- 可接受的值包括:
us-south-vault
us-standard-flex
eu-cold
- 可接受的值包括:
- 单击“更新”。
运行样本
API 样本请求相当简单,很容易上手使用。 这些样本设计为按顺序运行,并演示如何与 Cloud Storage 进行交互。 还可以对 Cloud Storage 服务运行功能测试,以确保正常运行。
请求 | 预期结果 | 测试结果 |
---|---|---|
检索存储区列表 | 在“主体”中,可设置 Cloud Storage 中存储区的 XML 列表。 | 请求成功。 响应包含预期内容 |
创建新存储区 | 状态码 200 正常 | 请求已成功 |
创建新的文本文件 | 状态码 200 正常 | 请求成功。 响应包含预期头 |
创建新的二进制文件 | 单击主体,然后单击选择文件以选择要上传的映像。 | 请求成功。 响应包含预期头 |
检索存储区中的文件列表 | 在响应的“主体”中,可看到在先前请求中创建的两个文件。 | 请求成功。 响应包含预期头 |
检索存储区中的文件列表(按前缀过滤) | 将查询字符串值更改为 prefix=<some text> 。 在响应的“主体”中,可看到名称以指定前缀开头的文件。 |
请求成功。 响应包含预期头 |
检索文本文件 | 在响应的“主体”中,可看到在先前请求中输入的文本。 | 请求成功。 响应包含预期主体内容。 响应包含预期头 |
检索二进制文件 | 在响应的“主体”中,可看到在先前请求中选择的映像。 | 请求成功。 响应包含预期头 |
检索失败分块上传的列表 | 在响应的“主体”中,可看到存储区的所有失败分块上传。 | 请求成功。 响应包含预期内容 |
检索失败分块上传的列表(按名称过滤) | 将查询字符串值更改为 prefix=<some text> 。 在响应的“主体”中,可看到存储区中名称以指定前缀开头的所有失败分块上传。 |
请求成功。 响应包含预期内容 |
设置启用 CORS 的存储区 | 状态码 200 正常 | 请求已成功 |
检索存储区 CORS 配置 | 在响应的“主体”中,可看到为存储区设置的 CORS 配置。 | 请求成功。 响应包含预期内容 |
删除存储区 CORS 配置 | 状态码 200 正常 | 请求已成功 |
删除文本文件 | 状态码 200 正常 | 请求已成功 |
删除二进制文件 | 状态码 200 正常 | 请求已成功 |
删除存储区 | 状态码 200 正常 | 请求已成功 |
创建新存储区(其他存储类) | 状态码 200 正常 | 请求已成功 |
删除存储区(其他存储类) | 状态码 200 正常 | 请求已成功 |
创建新存储区 (Key Protect) | 状态码 200 正常 | 请求已成功 |
删除新存储区 (Key Protect) | 状态码 200 正常 | 请求已成功 |
使用 Postman 集合运行器
Postman 集合运行器提供了用于测试集合的用户界面,允许您一次运行集合中的所有请求。
- 单击 Postman 主窗口右上角的“运行器”按钮。
- 在“运行器”窗口中,选择 IBM COS 集合,然后单击屏幕底部的蓝色大按钮运行 IBM COS。
- “集合运行器”窗口在运行请求时会显示迭代。 您将看到每个请求下显示了测试结果。
- 运行摘要显示请求的网格视图,并允许对结果进行过滤。
- 还可以单击导出结果,以将结果保存到 JSON 文件。