【问题标题】:should I use 301 or 302 redirect for access control?我应该使用 301 或 302 重定向进行访问控制吗?
【发布时间】:2015-07-27 06:42:41
【问题描述】:

我向用户提供仅引用实际文件的文件/媒体链接。在服务器端,我截取了这个链接并检查用户是否有权访问所述文件。如果他们这样做,我会将他们重定向到最终链接,该链接包含关于他们可以对资源做什么以及持续多长时间的过期政策。

我的问题是 302 重定向是否比 301 更有意义和/或是否有更好的方法来处理这个问题?

if user
    file = share.Files.findOne({_id: @params._id, accessibleBy: user._id})
    if file
      location = "/server/file/" + file._id + "/" + file.policy + "/" + file.signature
      @response.writeHead(301, {Location: location})
  @response.end()

【问题讨论】:

    标签: redirect routing routes authorization server-side


    【解决方案1】:

    301 表示“永久移动”——如果 URL 曾经有效,则不,它没有永久移动。 302(“找到”)会更好,是的,但 303(“查看其他”)会更合适。

    【讨论】:

    • 似乎没有比 303 更好的答案,因为它几乎描述了这个确切的用例。不知道。谢谢!
    猜你喜欢
    • 2012-03-10
    • 2011-03-16
    • 2013-10-08
    • 1970-01-01
    • 2014-09-19
    • 2016-09-17
    • 2011-12-01
    • 1970-01-01
    • 2015-11-02
    相关资源
    最近更新 更多