1

我有一个获取请求,该请求检索在页面上显示图形所需的 JSON。我会在 JQuery 中执行此操作,但由于我正在使用 API,这是不可能的——所以我必须在 rails 中执行此操作。

我想知道:如果我在页面操作中的单独线程上运行 get 请求,那么该变量是否可以在页面加载后传递给 javascript?我不确定线程​​在导轨中是如何工作的。

像这样的工作:

Thread.new do
        url = URI.parse("http://api.steampowered.com/IDOTAMatch_570/GetMatchHistory/v001/?key=#{ENV['STEAM_WEB_API_KEY']}&account_id=#{id}&matches_requested=25&game_mode=1234516&format=json")
        res = Net::HTTP::get(url)
        matchlist = JSON.parse(res)
        matches = []
        if matchlist['result'] == 1 then
            matchlist['result']['matches'].each do |match|
                matches.push(GetMatchWin(match['match_id']))
            end
        end

        def GetMatchWin(match_id, id)
            match_data = matchlist["result"]["matches"].select {|m| m["match_id"] == match_id}
        end
    end
end

鉴于上面的代码在一个帮助文件中,然后它在控制器的操作中被调用,如下所示:

def index
  if not session.key?(:current_user) then
    redirect_to root_path
  else
    gon.winlossdata = GetMatchHistoryRawData(session[:current_user][:uid32])

  end
end

“gon”部分只是将数据传递给javascript的宝石。

4

0 回答 0