我正在尝试使用 auth.getMobileSession 方法向我的 last.fm 应用程序验证用户身份,该应用程序是使用 last.fm REST api 构建的。
Last.fm 说对于移动应用我们需要发送AuthToken
authToken (Required) : A 32-byte ASCII hexadecimal MD5 hash of the last.fm username and the user's password hash. i.e. md5(username + md5(password)), where '+' represents a concatenation. The username supplied should match the string used to generate the authToken.
这就是我在 ruby 中尝试做的事情:
password = Digest::MD5.hexdigest("my_password")
auth_token = Digest::MD5.hexdigest("#{user_name}#{password}")
url_with_params = URI.parse("#{url}?method=auth.getmobilesession&api_key=#{api_key}&username=#{user_name}&authtoken=#{auth_token}&api_sig=#{api_sig}&format=json")
resp = Net::HTTP.get_response(url_with_params)
puts JSON.parse(resp.body)
我得到的输出是:
{"error"=>4, "message"=>"Invalid authentication token. Please check username/password supplied"}
谁能告诉我我做错了什么?