我是使用网站API的新手。但是很长一段时间我想学习这个,今天开始用一个简单的例子来说明如何从soundcloud获取信息。下面是简单的例子,从他们website如何获得连接到soundcloud api的“oauth访问秘密”
require 'rubygems'
gem 'soundcloud-ruby-api-wrapper'
require 'soundcloud'
gem 'oauth'
require 'oauth'
# Create a Soundcloud OAuth consumer token object
sc_consumer = Soundcloud.consumer('YOUR_APPLICATION_CONSUMER_TOKEN','YOUR_APPLICATION_CONSUMER_SECRET')
# Create an OAuth access token object
access_token = OAuth::AccessToken.new(sc_consumer, 'YOUR_OAUTH_ACCESS_TOKEN', 'YOUR_OAUTH_ACCESS_SECRET')
# Create an authenticated Soundcloud client, based on the access token
sc_client = Soundcloud.register({:access_token => access_token})
# Get the logged in user
my_user = sc_client.User.find_me
# Display his full name
p "Hello, my name is #{my_user.full_name}"
我知道作为设置代码:
- 'YOUR_APPLICATION_CONSUMER_TOKEN'
- 'YOUR_APPLICATION_CONSUMER_SECRET'
,因为这是给在soundcloud上注册应用程序时。
我把“YOUR_OAUTH_ACCESS_TOKEN”到http://api.soundcloud.com/oauth/access_token 这也是写在的SoundCloud网站,但我不知道从哪里获取的
_YOUR_OAUTH_ACCESS_SECRET_。
这个访问的秘密也是一个随机的字符串,我从某处得到,我必须自己生成它。
编辑正如精英绅士的答案建议我也尝试过认证的SoundCloud的例子。我张贴在这里的代码段这已经导致了错误:我收到那么
require 'rubygems'
gem 'soundcloud-ruby-api-wrapper'
require 'soundcloud'
# oAuth setup code:
# Enter your consumer key and consumer secret values here:
@consumer_application = {:key => 'QrhxUWqgIswl8a9ESYw', :secret => 'tqsUGUD3PscK17G2KCQ4lRzilA2K5L5q2BFjArJzmjc'}
# Enter the path to your audio file here.
path_to_audio_file = "your/absolute/path/to/audio_file.ext"
# Set up an oAuth consumer.
@consumer = OAuth::Consumer.new @consumer_application[:key], @consumer_application[:secret],
{
:site => 'http://api.sandbox-soundcloud.com',
:request_token_path => '/oauth/request_token',
:access_token_path => '/oauth/access_token',
:authorize_path => '/oauth/authorize'
}
# Obtain an oAuth request token
puts "Get request token"
request_token = @consumer.get_request_token
的错误信息是:
OAuth::Unauthorized: 401 Unauthorized
method token_request in consumer.rb at line 217 method get_request_token in consumer.rb at line 139 at top level in test1.rb at line 25
这个简单的例子,怎能不?
感谢您的快速答复。但我认为你不明白我的问题是什么,也许是因为它太简单了。为了请求access_token(access_token = OAuth :: AccessToken.new(sc_consumer,'YOUR_OAUTH_ACCESS_TOKEN','YOUR_OAUTH_ACCESS_SECRET'))我已经必须知道** YOUR_OAUTH_ACCESS_SECRET **你明白我的意思了吗? – dedan 2010-11-23 16:26:22
@dedan,对于你的问题,答案是肯定的,但这似乎是一个旧的OAuth身份验证方案。查看我编辑过的帖子以获取更多 – 2010-11-23 16:32:30