2

我正在尝试跟踪我们发送的特定电子邮件是否已打开,因此在我发送的每封电子邮件中使用散列网址作为图像。目前,当请求该 url 时,我记录了电子邮件已被查看的事实(基于 url 中的哈希)并从 Web 应用程序服务器提供图像(每个人都使用相同的图像)。

在这一点上,我们正在发展到一个小时内收到 10k 多个请求的情况,我认为我可以通过给他们一个 3xx HTTP 响应以及一个更接近他们的图像的 URL 来更好地为我们的客户服务。专用 CDN 而不是我们的应用程序服务器。

哪个代码最好?我认为 302、303 或 307 都是可用的选择。请记住,这种媒体没有 SEO 价值,我唯一关心的是尽快将静态图像交付给客户端,而不会导致旧邮件客户端出现问题。

http://en.wikipedia.org/wiki/List_of_HTTP_status_codes

4

1 回答 1

2

如果 http 1.0 客户端在潜在组合中,则302 状态代码将是您的最佳选择。使用 302,应该对原始 URL 发出未来的请求(例如,这样您就可以继续跟踪它,而 301 则建议未来的请求转到新的 URL)。303 通常用于 POST 请求。307 可能对http 1.0 客户端有一些问题。

于 2010-12-27T18:13:56.693 回答