向 Elastic Transcoder 提出 HTTP 請求 - Amazon Elastic Transcoder

節省成本並獲得更多功能 AWS Elemental MediaConvert

MediaConvert 是一項較新的檔案型視訊轉碼服務,提供全方位的進階轉碼功能,按需費率從每分鐘 $0.0075 起。閱讀更多

已經使用 Amazon Elastic Transcoder? 遷移到 MediaConvert. 如需詳細資訊,請參閱此概觀,其中包含有關移轉程序的重要資訊以及其他資源的連結。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

向 Elastic Transcoder 提出 HTTP 請求

Elastic Transcoder REST 請求是 RFC 2616 中定義的 HTTPS 請求。(如需詳細資訊,請前往 http://www.ietf.org/rfc/rfc2616.txt。) 本節描述 Elastic Transcoder REST 請求的結構。如需可執行動作的詳細說明,請參閱管道操作任務操作預設集操作

典型的 REST 動作包括向 Elastic Transcoder 發送 HTTPS 請求,並等待 HTTP 回應。與任何 HTTP 請求一樣,對 Elastic Transcoder 的 REST 請求包含請求方法、URI、請求標題,有時還包括查詢字串或請求內文。回應包含 HTTP 狀態碼、回應標題,有時還包括回應內文。

HTTP 標頭內容

Elastic Transcoder 需要 HTTP 請求標頭中的下列資訊:

主機 (必要)

指定您資源所建立地點的 Elastic Transcoder 端點。該值必須為已命名的區域端點。建議您為 Amazon S3 存儲桶、Elastic Transcoder 管道和任務使用相同的端點。如果您使用不同的端點,則包含 Amazon S3 存儲桶的區域和 Elastic Concoder 進行編碼的區域之間的資料傳輸,會產生額外的費用。此外,資料傳輸所需的時間將延遲對轉碼後檔案的存取。

如需支援 Elastic Transcoder 端點的清單,請前往區域與端點」區段Amazon Web Services 一般參考

如需跨區域費用的詳細資訊,請參Amazon S3 定價

x-amz-date 或日期 (必要)

用來建立包含在 Authorization 標題中的簽章的日期。使用 ISO 8601 標準格式以 UTC 時間指定日期,如下所示:X-Amz-Date: 20130613T203622Z

您必須包含 x-amz-dateDate。(有些 HTTP 用戶端程式庫不讓您設定 Date 標頭)。當 x-amz-date 標題存在時,系統會在驗證請求時略過任何 Date 標題。

當收到請求時,時間戳記必須在 AWS 系統時間的 15 分鐘內。若為非,請求失敗並發生 RequestExpired 錯誤碼,以防止其他人重播您的請求。

授權 (必要)

請求驗證所需的資訊。如需建構此標頭的詳細資訊,請參閱簽署請求

內容類型 (條件)

指定 JSON 和版本,例如 Content-Type: application/x-amz-json-1.0

條件:對於 POST 請求為必填項目。

內容長度 (條件)

根據 RFC 2616 的訊息長度 (無標題)。

條件:如果請求內文本身包含資訊 (大多數工具組將自動新增此標題),則為必填項目。

以下是建立管道之 HTTP 請求的範例標頭。

POST /2012-09-25/pipelines HTTP/1.1 host: elastictranscoder.us-east-1.amazonaws.com:443 x-amz-date: 20120116T174952Z Authorization: AWS4-HMAC-SHA256 Credential=AccessKeyID/20120116/us-east-1/elastictranscoder/aws4_request,SignedHeaders=host;x-amz-date;x-amz-target,Signature=145b1567ab3c50d929412f28f52c45dbf1e63ec5c66023d232a539a4afd11fd9 content-type: application/x-amz-json-1.0 content-length: 231 connection: Keep-Alive

HTTP 請求內文

許多 Elastic Transcoder API 動作要求您在請求內文中包含 JSON 格式資料。JSON 符合彈性轉換器的結構描述。

注意

請求內文中的 JSON 值為字串。

範例 要求

以下範例使用簡單的 JSON 陳述式,建立將名為 sample.mp4 的檔案轉碼並儲存為 sams-birthday.mp4 的任務。

POST /2012-09-25/jobs HTTP/1.1 Content-Type: application/json; charset=UTF-8 Accept: */* Host: elastictranscoder.us-east-1.amazonaws.com:443 Content-Length: 300 { "Input":{ "Key":"sample.mp4", "FrameRate":"auto", "Resolution":"auto", "AspectRatio":"auto", "Interlaced":"auto", "Container":"mp4" }, "OutputKeyPrefix":"family-videos/", "Outputs":[ { "Key":"sams-birthday.mp4", "ThumbnailPattern":"thumbnails/sams-birthday-{count}", "Rotate":"0", "PresetId":"1351620000000-100080" } ], "PipelineId":"1111111111111-abcde1" }

HTTP 回應

所有 Elastic Transcoder API 動作在回應裡都包含 JSON 格式資料。JSON 符合彈性轉換器的結構描述。

注意

回應中的 JSON 值為字串。

以下為 HTTP 回應中一些重要的標頭,以及在應用程式中如何應用他們,如果適用的話:

HTTP/1.1

此標頭後面有狀態碼。狀態碼 200 表示操作成功。如需錯誤代碼的詳細資訊,請參閱 API 錯誤代碼 (用戶端和伺服器錯誤)

類型:字串

x-amzn-RequestId

Elastic Transcoder 所建立用於唯一識別您的請求的值,例如 K2QH8DNOU907N97FNA2GDLL8OBVV4KQNSO5AEMVJF66Q9ASUAAJG。如果發生 Elastic Transcoder 問題,AWS 可能會使用此值來解決問題。建議您將這些值記錄下來。

類型:字串

Content-Length

回應內文的長度,以位元組為單位。

類型:字串

日期

彈性轉換器回應的日期和時間,例如Sun, 25 Mar 2012 12:00:00 GMT。日期格式必須是 RFC 2616 第 3.3 節中規定的完整日期格式之一 。

類型:字串