permanentRedirect
permanentRedirect
işlevi, kullanıcıyı başka bir URL'ye yönlendirmenize olanak tanır. permanentRedirect
Sunucu Bileşenlerinde, İstemci Bileşenlerinde, Rota İşleyicilerinde ve Sunucu Eylemlerinde kullanılabilir.
Bir akış bağlamında kullanıldığında, bu, istemci tarafında yönlendirmeyi yaymak için bir meta etiket ekleyecektir. Bir sunucu eyleminde kullanıldığında, arayan kişiye 303 HTTP yönlendirme yanıtı sunar. Aksi takdirde, arayan kişiye 308 (Kalıcı) HTTP yönlendirme yanıtı sunar.
Bir kaynak mevcut değilse, bunun yerine notFound
işlevini kullanabilirsiniz.
Bilmekte fayda var: Eğer 308 (Kalıcı) yerine 307 (Geçici) HTTP yönlendirmesi döndürmeyi tercih ediyorsanız, bunun yerine
redirect
fonksiyonunu kullanabilirsiniz.
Parameters
permanentRedirect
işlevi iki bağımsız değişken kabul eder:
permanentRedirect(path, type)
Parameter | Type | Description |
---|---|---|
path | string | The URL to redirect to. Can be a relative or absolute path. |
type | 'replace' (default) or 'push' (default in Server Actions) | The type of redirect to perform. |
Varsayılan olarak, permanentRedirect
Sunucu Eylemlerinde push
(tarayıcı geçmişi yığınına yeni bir girdi ekleme) ve diğer her yerde replace
(tarayıcı geçmişi yığınındaki geçerli URL'yi değiştirme) kullanacaktır. Bu davranışı type
parametresini belirterek geçersiz kılabilirsiniz.
type
parametresinin Sunucu Bileşenlerinde kullanıldığında hiçbir etkisi yoktur.
Returns
permanentRedirect
herhangi bir değer döndürmez.
Example
permanentRedirect()
işlevinin çağrılması bir NEXT_REDIRECT
hatası verir ve hatanın verildiği rota segmentinin işlenmesini sonlandırır.
import { permanentRedirect } from 'next/navigation'
async function fetchTeam(id) {
const res = await fetch('https://...')
if (!res.ok) return undefined
return res.json()
}
export default async function Profile({ params }) {
const team = await fetchTeam(params.id)
if (!team) {
permanentRedirect('/login')
}
// ...
}
Bilmekte fayda var:
permanentRedirect
, TypeScript'i kullandığı içinreturn permanentRedirect()
kullanmanızı gerektirmeznever
tip.