0

IOS アプリケーションへのバックエンドがあります。JSON を使用して Rails バックエンドからデータを読み取ろうとしています。私の bubbleWrap get リクエストは次のとおりです。

BW::HTTP.get("url_here/children/1.json") do |response|
   json = BW::JSON.parse response.body.to_str
   for line in json
     p line[:name]
   end
end

それはデータを戻さず、実際に私のコードを壊します。rubymotion/Bubblewrap から REST を使用してアプリケーションにデータをプルする方法の例を含むドキュメントが見つかりません。

どんな助けでも大歓迎です。

4

2 に答える 2

0

Always check the response code before parsing the response body. You might

BW::HTTP.get(url) do |response|
  if response.ok?
    data = BW::JSON.parse(response.body.to_str)
    # make sure you have an array or hash before you try iterating over it
    data.each {|item| p item}
  else
    warn "Trouble"
  end
end

Also make sure you sanity-check the JSON response vs your code's expectation. Perhaps the JSON is an array and not a hash?

于 2013-08-23T17:23:19.673 に答える