国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - cURL操作Openstack對象存儲的ReST API詳解

cURL操作Openstack對象存儲的ReST API詳解

2020-12-24 17:00牛皮糖的Blog 服務器知識

這篇文章主要介紹了cURL操作Openstack對象存儲的ReST API詳解的相關資料,需要的朋友可以參考下

 由于最近工作需要使用Openstack ,使用cURL操作Openstack對象存儲的ReST API,這是本人找了好多資料完成的,這里記錄下。

使用Openstack ,使用cURL操作Openstack對象存儲的ReST API

     cURL 是一個利用URL語法規定來傳輸文件和數據的工具,支持很多協議,如HTTP、FTP、TELNET等。本文主要是介紹使用該工具和HTTP協議與swift服務如何交互。cURL允許你從命令行或shell腳本傳送和接收HTTP的請求和響應。這使得直接與ReST的API工作而無需其他客服端APIs成為可能。本文,我們需要使用到以下的cURL命令行選項:

?
1
2
3
4
5
6
7
-X METHOD 描述HTTP的請求方法(HEAD, GET等)
 
-D Dump 將HTTP響應頭部到stdout.
 
-H HEADER 描述一個在請求中的HTTP\HTTPS頭部.
 
-v 使用操作的過程更加詳細

1.認證

In order to use the ReST API, you will first need to obtain a authorization token, which will need to be passed in for each request using the X-Auth-Token header. The following example demonstrates how to use cURL to obtain the authorization token and the URL of the storage system.

為了使用ReST的API,我們首先需要獲得一個認證令牌,用于傳給每個使用X-Auth-Token頭部的請求。以下的例子展示了如何使用cURL來獲得認證令牌和存儲系統的URL。

Exp1:獲得X-Storage-Url和X-Auth-Token

 curl -D- -H 'X-Storage-User: test:tester' -H 'X-Storage-Pass: testing' http://127.0.0.1:8080/auth/v1.0

運行結果如下:

?
1
2
3
4
5
6
7
sting' http://127.0.0.1:8080/auth/v1.0
HTTP/1.1 200 OK
X-Storage-Url: http://127.0.0.1:8080/v1/AUTH_test
X-Storage-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928
X-Auth-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928
Content-Length: 0
Date: Fri, 07 Oct 2011 07:45:58 GMT

也可以使用-v選項來獲得更詳細的信息:

curl -v -H 'X-Storage-User: test:tester' -H 'X-Storage-Pass: testing' http://127.0.0.1:8080/auth/v1.0

運行結果如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
* About to connect() to 127.0.0.1 port 8080 (#0)
*  Trying 127.0.0.1... connected
* Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
> GET /auth/v1.0 HTTP/1.1
> User-Agent: curl/7.21.3 (i686-pc-linux-gnu) libcurl/7.21.3 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
> Host: 127.0.0.1:8080
> Accept: */*
> X-Storage-User: test:tester
> X-Storage-Pass: testing
>
< HTTP/1.1 200 OK
< X-Storage-Url: http://127.0.0.1:8080/v1/AUTH_test
< X-Storage-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928
< X-Auth-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928
< Content-Length: 0
< Date: Fri, 07 Oct 2011 07:48:30 GMT
<
* Connection #0 to host 127.0.0.1 left intact
* Closing connection #0

     存儲URL和認證令牌作為響應頭部返回。在認證之后,你可以使用cURL來執行存儲服務上的HEAD,GET,DELETE,POST和PUT請求。

2.確定存儲的使用情況

一個HEAD請求可以發送到存儲服務來確定你已經在系統中存儲了多少數據以及你使用的容器數量。使用-X開關來描述正確的HTTP方法和-D將HTTP響應頭部輸出到終端(stdout)。

Exp2:查詢帳號的存儲使用情況

?
1
2
3
curl -X HEAD -D - \
-H "X-Auth-Token:AUTH_tkf828cc87bb9348168a52619b1f7e3928" \
http://127.0.0.1:8080/v1/AUTH_test

輸出如下:

?
1
2
3
4
5
6
7
HTTP/1.1 204 No Content
X-Account-Object-Count: 3
X-Account-Bytes-Used: 92983
X-Account-Container-Count: 4
Accept-Ranges: bytes
Content-Length: 0
Date: Fri, 07 Oct 2011 08:04:38 GMT

HTTP請求必須包含了一個頭部來描述認證令牌。在響應中的HTTP頭部顯示在該存儲帳號中的容器數量和整個帳號所存儲的總字節數。

3.創建一個存儲容器

    在上傳任何數據到OpenStack的對象存儲之前,你必須創建一個存儲容器。你可以使用PUT請求來創建一個容器;cURL也可以用于該目的。

Exp3:創建一個photos的容器

curl -X PUT -D - -H "X-Auth-Token:AUTH_tkf828cc87bb9348168a52619b1f7e3928" http://127.0.0.1:8080/v1/AUTH_test/photos

運行結果如下:

?
1
2
3
4
HTTP/1.1 201 Created
Content-Length: 18
Content-Type: text/html; charset=UTF-8
Date: Fri, 07 Oct 2011 08:18:44 GMT

    返回201(Created)的HTTP狀態代碼表示容器已被成功地創建。

4.上傳一個存儲對象

在創建完一個容器之后,你可以上傳一個本地文件。對于這個例子,我們上傳一張林志玲MM的照片。-T開關描述到上傳的本地文件的完整路徑。

Exp4:上傳對象

?
1
2
3
4
5
curl -X PUT -T /home/swift/下載/lzl.jpg -D - \
 -H "Content-Type: image/jpeg" \
 -H "X-Auth-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928" \
 -H "X-Object-Meta-lzl: 一張關于林志玲的美圖" \
 http://127.0.0.1:8080/v1/AUTH_test/photos/lzl.jpg

結果如下:

?
1
2
3
4
5
6
HTTP/1.1 201 Created
Content-Length: 118
Content-Type: text/html; charset=UTF-8
Etag: 870563216b9f54942fc09d574aa3e2bd
Last-Modified: Fri, 07 Oct 2011 08:39:49 GMT
Date: Fri, 07 Oct 2011 08:39:51 GMT

 5.其他cURL命令

你可以使用cURL工具發出任何已定義的用于OpenStack對象存儲的ReST方法。例如,你可以使用cURL來發送POST和DELETE請求即使我們沒有提供的相關例子。比如,下載剛才上傳的照片:

curl -X GET -H "X-Auth-Token: AUTH_tkf828cc87bb9348168a52619b1f7e3928" http://127.0.0.1:8080/v1/AUTH_test/photos/lzl.jpg >td_lzl.jpg

注意:一般地,你每次調用curl來執行一個操作,系統就會創建一個獨立的TCP/IP和SSL連接(https)然后丟棄。然而,使用語言的APIs是設計用來重用這些在操作之間的連接,因此提供了更好的細嫩。我們推薦在你的產品應用中使用一種支持語言的APIs并且限制curl僅用來快速和簡單地測試/診斷。

 感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://www.cnblogs.com/yuxc/archive/2011/10/07/2200656.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 99伊人 | 欧美xo影院 | 高清一区二区三区 | 欧美激情亚洲 | 国产精品一区三区 | 精品国产乱码久久久久久丨区2区 | 国产一区二区视频免费看 | 91久久精品国产91久久性色tv | 黄在线免费观看 | 亚洲成人一区二区在线观看 | 操操日 | 国产剧情一区二区 | 超碰日韩| 日日操av | 狠狠综合久久 | 一区二区av | 美女爽到呻吟久久久久 | 日韩一区二区精品 | 狠狠久久婷婷 | 综合色区 | 999精品视频| 精品久久久久久国产 | 可以免费看黄色的网站 | 亚洲精品二区 | 污视频网站在线观看 | 国产9色在线 | 日韩 | 国产精品久久久久久久一区探花 | 91极品视频在线观看 | 亚洲精品一区二区三区蜜桃下载 | 欧美日韩国产一区二区三区 | 淫片一级国产 | 国产精品视频播放 | 国产成人在线播放 | 一区二区三区欧美在线 | 久艹精品 | 国产黄色免费看 | 精品福利一区二区三区 | 亚洲一区二区三区在线播放 | 91视频.com| 精品久久99| 色伊人|