用红宝石重定向twilio

时间:2012-11-29 22:36:36

标签: ruby sinatra twilio

我是Twilio和Ruby的新手,我正试图弄清楚如何“重定向”或向另一个网址发送请求。我不需要在此步骤收集数据,只需评估传递的参数并将其发送到一个方向或另一个方向。有什么帮助吗?

 post '/ors_verified/ors/:ors_number' do |ors_number|
     number_correct = params['Digits']
     if number_correct == '1'
          redirect "/how_many_irt/ors/#{ors_number}"
     else 
          redirect '/how_many_ors'
 end
 end

3 个答案:

答案 0 :(得分:2)

你可以使用:redirect_to代替redirect所以

post '/ors_verified/ors/:ors_number' do |ors_number|
 number_correct = params['Digits']
 if number_correct == '1'
      redirect_to "/how_many_irt/ors/#{ors_number}"
 else 
      redirect_to '/how_many_ors'
 end
end

答案 1 :(得分:2)

所以问题是我需要把它包装成twillio响应。

 post '/ors_verified/ors/:ors_number' do |ors_number|
    number_correct = params['Digits']
   Twilio::TwiML::Response.new do |r|
    if number_correct == '1'
      r.Redirect "/how_many_irt/ors/#{ors_number}"
    else 
      r.Redirect '/how_many_ors'
    end
   end.text 
end

答案 2 :(得分:0)

由于您似乎使用sinatra,重定向应如下所示:

 post '/ors_verified/ors/:ors_number' do |ors_number|
     number_correct = params['Digits']
     if number_correct == '1'
          redirect to("/how_many_irt/ors/#{ors_number}") # <-- notice the #to
     else 
          redirect to('/how_many_ors') # <-- notice the #to
     end
 end

#to基本上会从你的字符串中创建另一个sinatra可以作用的对象。 你可以阅读有关sinatra重定向here

的信息