Expire time link url trong mail (laravel)

Mn cho mình hỏi chút, mình đang học laravel, mình có làm gửi mail, trong nội dung mail có gắn gắn một url, giờ mình muốn url có hiệu lực trong một ngày, quá thời gian đó thì ko truy cập đc url đó nữa, mn cho mình hỏi când xử lý thế nào ạ

Lưu id dùng để gen link vào DB, set giờ hết hạn cho nó. Khi nào truy cập thì kiểm tra trong DB xem đã hết hạn chưa. Easy

6 Likes

Phân tích một chút

  1. Để biết url đó expire thì bạn cần có gì đó đánh dấu (hay lưu thời gian expire của link đó)
  2. Chon chỗ để lưu, có nhiều giải pháp cho chuyện này, như redis, database, file…
  3. Lưu cái gì? Link (hoặc gì đó có thể suy ra link) + expire time
  4. Vấn đề phát sinh, khi người dùng request nhiều lần (vì lý do gì đó, ví dụ như lag, mail delay) thì có cần hủy những link trước đó hay không?
  5. Nếu 4 thật sự là vấn đề thì cần phải ghi đè hoặc xóa hoặc làm expire link cũ (cái này lại tùy vào thiết kế nữa)
5 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?