【问题标题】:Conditional redirect based on referrer基于推荐人的条件重定向
【发布时间】:2022-01-29 02:40:21
【问题描述】:

是否可以根据访问者的referer进行有条件的重定向?

如果用户来自特定域(和/或任何其他子域),我想做的是重定向用户,如果没有引荐来源或域不匹配,则不应应用重定向。

我在考虑使用 getServerSideProps()。

【问题讨论】:

    标签: next.js nextjs-dynamic-routing


    【解决方案1】:

    这样的逻辑读取标头需要在 some 服务器上,并且您应该能够读取 middleware 中的引荐来源网址,您也可以在其中处理重定向。这在理论上应该可行:

    // pages/_middleware.ts
    import type { NextRequest, NextResponse } from 'next/server';
    
    export function middleware(req: NextRequest) {
      console.log('referrer', req.referrer); // do your domain parsing / regex here
    
      // redirect with NextResponse.redirect()
    }
    

    推荐人的可靠性存在固有限制,因为对您而言该值可能是opaque

    我首先会质疑这种源嗅探和条件重定向的用例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-19
      • 2012-02-12
      • 1970-01-01
      相关资源
      最近更新 更多