利用可能な電話番号を一覧表示するために、Plivo に API 呼び出しを行っています。
返された応答にアクセスして、目的の要素を端末に出力できますが、Web ページでそれらを HTML としてレンダリングする方法がわかりません。これは私の問題です。
端末では、呼び出しが成功した場合の応答は次のようになります。
{"api_id"=>"23f1f0f0-0808-11e3-a442-22000ac6194a",
"meta"=>
{"limit"=>1, "next"=>nil, "offset"=>0, "previous"=>nil, "total_count"=>1},
"objects"=>
[{"group_id"=>"23928520636825",
"number_type"=>"local",
"prefix"=>"646",
"region"=>"New York, UNITED STATES",
"rental_rate"=>"0.80000",
"resource_uri"=>
"/v1/Account/MAZDQ1ZJIYMDZKMMZKYM/AvailableNumberGroup/23928520636825/",
"setup_rate"=>"0.00000",
"sms_enabled"=>true,
"sms_rate"=>"0.00800",
"stock"=>50,
"voice_enabled"=>true,
"voice_rate"=>"0.00900"}]}
"0.00900"
New York, UNITED STATES
646
応答を生成する Ajax スクリプトは次のとおりです。
$(".localsearch").click(function() {
var country_iso = $("#local").val();
var region = $("#region").val();
var prefix = $("#prefix").val();
$.ajax({
type: "GET",
url: "/local/data",
data: { 'country_iso' : country_iso, 'region' : region, 'prefix' : prefix },
success: function(data) {
alert(data)
},
});
});
アラートは役に立たず、ページ全体を表示するだけです。
ルビーコードは次のとおりです。
get '/local/data' do
country_iso = params[:country_iso]
region = params[:region]
prefix = params[:prefix]
p = RestAPI.new(AUTH_ID, AUTH_TOKEN)
params = {'country_iso' => country_iso, 'region' => region, 'prefix' => prefix, 'limit' => '1'}
response = p.get_number_group(params)
obj = response.last
pp response.last
@region = obj["objects"][0]["region"]
puts @region
@prefix = obj["objects"][0]["prefix"]
puts @prefix
erb :search
end
長くて申し訳ありませんが、要約すると、API 応答から要素を抽出して HTML として出力するにはどうすればよいですか? よろしくお願いします。
私が試したビューで:
<%= @region %>
そして<%= obj['region'] %>
、<%= obj['objects][0]['region'] %>
そして、それらのどれも機能しません。