我正忙着使用RSpotify,它是Spotify API的ruby包装器。
我添加了一个表单并发送了搜索结果参数,以便在API中查找但我收到以下错误:
NoMethodError: undefined method `empty?' for nil:NilClass
from /Users/user/.rvm/gems/ruby-2.3.1/gems/rspotify-1.21.0/lib/rspotify/connection.rb:71:in `send_request'
我仔细检查并重新安装了gem,将它添加到gemfile和所有内容中。我似乎无法弄清楚它为什么不起作用。
这是代码(几周前我写的时候它正在运行):
post '/music' do
search = RSpotify::Artist.search(params[:search])
@artist = search.first
@image = @artist.images.first["url"]
@top_tracks = @artist.top_tracks(:US)
albums = @artist.albums
@titles = []
albums.each { |album| @titles << album.name }
@titles.uniq!
@related_artists = @artist.related_artists
erb :'/music/show'
end
答案 0 :(得分:1)
您似乎使用的是过时的版本(1.21.0,根据您的输出判断)。当前版本为1.22.1(参见https://rubygems.org/gems/rspotify)=&gt;也许尝试更新。
此外,像杰夫所说:显然存在一个开放的GitHub问题,即当您未经过适当的身份验证时会出现此问题。因此,可以检查您的凭据是否已设置且2)仍然有效。检查凭据的一种简单方法是直接将它们与API一起使用(请参阅http://www.compciv.org/recipes/data/touring-the-spotify-api/)=&gt;如果他们不在那里工作,那可能不是代码,而是你的凭据不能正常工作。