İstek yönlendirme yolu nasıl alınır?


83

Yönlendirenin yoluna ihtiyacım var. Alan adını istemiyorum. Yönlendiren ise Örneğin, http://www.google.com/adsenseben istiyorum /adsense.

Yanıtlar:


139

request.refererbir dize döndürür, ancak onu sarmak için Ruby'nin URI Modülünü kullanabilir ve sonra yolunu sorabilirsiniz:

if URI(request.referer).path == '/adsense'

4
Bu URI (request.referer) satırını kullanıyorum ve bir URI :: InvalidURIError: bozuk URI (URI değil mi?) Hatası almaya devam ediyorum. Bunun ne olabileceği ile ilgili bir fikir var mı?
— kateray

Daha fazla bilgi olmadan ne olabileceğini söylemek zor. request.refererRuby'nin neden bundan hoşlanmadığını görmek için yalnızca günlüklere yazdırmayı deneyin . (Not: Sorunuzu başka bir sorunun cevabına yorum yapmak yerine ayrı bir soru olarak sormak isteyebilirsiniz. :-))
— chadoh

1
Hakkında daha fazla bilgi edinmek için bu soruya göz atın URI::InvalidURIError.
— James Chevalier

İşin garibi, yönlendiren boş olmasa bile geçersiz bir URI olabilir. Bunu, URI :: InvalidURIError'ı yükselten bir '|' içeren bir yönlendirici ile buldum URI'yi sarmalıyorum.
— tomf

27

Yönlendirene ile erişebilirsiniz

request.referer

3
Ancak yönlendiren tam url verir. I need the path
— rails101

2
Yararlı bağlantı için teşekkürler @Fivell. Gelecekteki ziyaretçilerin link-rot ile uğraşmaması için bu konudaki bilgilerle bir cevap ekledim.
— chadoh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.