Search
- OSS MEDIA C SDK依賴於OSS C SDK,OSS MEDIA C SDK中的上傳和下載等功能是通過調用OSS C SDK的介面實現的。
是否支援追加寫檔案?
- 支援,調用oss_media_file_open時使用“a”模式,然後可以通過多次調用oss_media_file_write介面實現追加寫。
什麼是role arn?如何獲取role arn?
- role arn表示的是需要扮演角色的id,由阿里雲存取控制RAM提供。可以前往存取控制RAM > 角色管理 > 點擊已經建立的角色名稱稱 > 基本資料 > Arn,值類似於:acs:ram::xxxx:role/yyyyy。如果還沒有已建立的角色,需要在角色管理頁面建立一個新的使用者角色,並賦予AliyunSTSAssumeRoleAccess和其他相應角色,更詳細的介紹可以參考:RAM的文檔。
如何運行sample?
- 修改sample/config.c檔案,增加自己的access key id,access key secret,bucket等值,然後編譯後,在bin目錄下就會出現sample的可執行檔
報錯:error:a timeout was reached
- 檢查一下host的值,是否是類似於oss-cn-hangzhou.aliyuncs.com的值。這個是C SDK的一個已知問題,會在後期版本修複。
運行sample時報錯:error:Couldn’t resolve host name 和[code=-990, message=HttpIoError]
- 修改sample/config.c檔案,配置您自己的參數值,然後重新編譯即可。測試也一樣。
用戶端和服務端的access key id,access key secret,token配置有啥不同和注意點?
- 服務端只需要配置access key id和access key secret,這兩個值有兩種來源:第一個是主帳號的AccessKeys,第二個是主帳號生成的子帳號的AccessKeys。
- 用戶端有兩種配置方式,第一種是和服務端一樣,只配置主帳號或者子帳號的access key id,access key secret,第二種是配置access key id,access key secret和token三個值,但這三個值都是服務端通過oss_media_get_token或者oss_media_get_token_from_policy獲取到的臨時AccessKey和token,有時間期限,超過有效期間後,就不能再次使用。
執行sample獲取token的時候出現以下錯誤:http_code=500, error_code=GetSTSTokenError, error_message=Internal Error
- 原因是安裝的libcurl不支援HTTPS協議,導致無法訪問sts服務。具體過程是機器上沒有安裝openssl-devel等ssl的開發包,在編譯libcurl的時候找不到ssl,libcurl就自動禁止了HTTPS協議,導致編譯出來的libcurl庫不支援HTTPS,最終訪問STS失敗。
- 解決辦法是先安裝openssl-devel等ssl開發包,然後重新安裝libcurl。在安裝libcurl時,當執行完./configure後,檢查最後一行的Protocols裡包含了HTTPS,如果包含了,就說明正確了。
謝謝!我們已經收到了您的意見。