femto/ucloud-ruby-sdk — pull request #1 by wentianle (2014-04-07 16:28:52+00:00)
Title: fix_verify_ac error

fix http://ruby-china.org/topics/18447 使用问题。 请查阅

看下来您这个代码有几个问题

1. verify_ac 实现错误一下是正确方法

private
def verify_ac(params)
#'''use sha1 to encode keys'''
params = params.clone

params_data = ""
params.sort.each do |key, value|
params_data += (key.to_s + value.to_s)
end

puts UcloudApiClient.private_key
params_data += UcloudApiClient.private_key

#puts params_data
Digest::SHA1.hexdigest params_data
end

2. 所有参数都应该进行 签名所以：

def get(url, params, format="json")
params = params.clone
params['public_key'] = UcloudApiClient.public_key
params["region_id"] = 1
params["zone_id"] = 1
params["project_id"] = 0
params["module_id"] = 0
params["format"] = format

params["access_token"] = verify_ac(params)

result = RestClient.get "#{UcloudApiClient.base_url}#{url}", {:params => params}
result
end

3. 默认的 module_id 和 project_id 目前默认值请填写 0

params["project_id"] = 0
params["module_id"] = 0

给您这边带来不便，非常抱歉。 广而告知 UCLOUD 这边正在开发新版的API， 以及比较清晰的文档. 和主流语言的SDK都会提供.

https://github.com/ucloud-web/python-sdk
https://github.com/ucloud-web/php-sdk