W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
有些時候,pass 并不是你想要的,你希望得到的是另一個路由的結(jié)果。簡單的使用 call 可以做到這一點(diǎn):
get '/foo' do
status, headers, body = call env.merge("PATH_INFO" => '/bar')
[status, headers, body.map(&:upcase)]
end
get '/bar' do
"bar"
end
請注意在以上例子中,你可以更加簡化測試并增加性能,只要簡單將"bar"移動到 helper 中,然后就可被/foo 和 /bar 同時使用的 helper。
如果你希望請求被發(fā)送到同一個應(yīng)用,而不是副本,使用 call! 而不是 call.
如果想更多了解 call,請察看 Rack specification 中關(guān)于 call 的介紹。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: