Cravatar 上的所有 URL 都基于电子邮件地址的散列值使用。图像和个人资料都可以通过电子邮件的哈希来访问,它被认为是系统内识别身份的主要方式。为确保一致和准确的哈希值,应采取以下步骤来创建哈希:
- 从电子邮件地址中删除前导和尾随空格。
- 强制将所有字符转换为小写。
- 对最终字符串进行 md5 哈希处理。
以一个示例来说明,假设我们从 "MyEmailAddress@example.com "(注意尾随的空格,这是我们假设的用户误输入的) 开始。如果直接对该字符串进行 md5 编码,我们会得到以下结果 (在 PHP 中):
echo md5( "MyEmailAddress@example.com " );
// "f9879d71855b5ff21e4963273a886bfc"
现在,如果我们将相同的电子邮件地址通过上述过程运行,你会看到我们得到一个不同的结果 (再次在 PHP 中):
$email = trim( "MyEmailAddress@example.com " ); // "MyEmailAddress@example.com"
$email = strtolower( $email ); // "myemailaddress@example.com"
echo md5( $email );
// "0bc83cb571cd1c50ba6f3e8a78ef1346"
这可以很容易地合并为一行:
echo md5( strtolower( trim( "MyEmailAddress@example.com " ) ) );
生成一致的哈希后,你可以请求图像或个人资料。