搭配使用 curl 與 Watson 範例

curl 公用程式可讓您從指令行提出 HTTP 要求。 此公用程式提供一個簡式介面,用於提出使用 GETPOST及其他 HTTP 方法的要求。 它可讓您傳遞要求標頭、資料及其他輸入,而且它可以顯示呼叫傳回的所有回應標頭及資料。 因為 curl 不需要撰寫程式碼來練習 REST API , IBM Watson® 文件使用 curl 來示範範例呼叫。

依預設, curl 公用程式會隨最新版本的 Apple ® macOS® 及 Microsoft® Windows®一起安裝。

  • 如需在 macOS、Windows 或 Linux®上安裝或重新整理 curl 的相關資訊,請參閱 安裝 curl
  • 如需使用 curl 及其完整功能的相關資訊,請參閱 所有 curl

不建議在開發應用程式時使用 curl

使用 curl 進行安全通訊

若要測試系統上是否已安裝 curl ,請在終端機提示中執行下列指令:

curl -V

如果輸出在支援的通訊協定中列出 https ,並在支援的特性中列出 SSL (Secure Sockets Layer) 或 TLS (傳輸層安全) ,則您已全部設定。 所有 IBM Watson Watson 服務都使用這些特性來進行用戶端與伺服器之間的安全連線。 連線要求會針對本端憑證儲存庫進行驗證,以確保鑑別、完整性和機密性。

如果未列出這些通訊協定,您可以對要求使用自簽憑證。 但若要成功建立連線,您需要在要求中包括 --insecure-k 選項,以停用 SSL 驗證。

強烈建議啟用 SSL 驗證。 停用 SSL 會危及連線及資料的安全。 請只在必要時才停用 SSL ,且只使用非機密的資料,並採取步驟儘快啟用 SSL。

範例 curl 要求

下列範例示範如何使用 curl。 這些要求使用 Speech to Text 服務,將音訊轉錄為同時具有 IBM Cloud® 和 IBM Cloud Pak® for Data的文字。

IBM Cloud

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary ./audio-file.flac \
"{url}/v1/recognize"

IBM Cloud Pak for Data

curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary ./audio-file.flac \
"{url}/v1/recognize"

在這兩個範例中,您將 {url} 取代為服務實例的 URL。 IBM Cloud®與 IBM Cloud Pak® for Data之間的鑑別有所不同,在其中,您將 {apikey} 取代為服務實例的 API 金鑰,在其中,您將 {token} 取代為針對服務實例產生的存取記號。 如需在任一平台上向服務進行鑑別的相關資訊,請參閱 向 Watson 服務進行鑑別

根據文件中的範例來提交要求時,請省略範例中的大括弧 ({ }); 它們指出您必須取代為實際值的變數值。 Windows 使用者必須將每行結尾的反斜線 (\) 取代為脫字符號 (^)。 請確定 \^之後沒有尾端空格。