查找和生成上传短链接

显示在帖子中:

![img-MAVMAbkLhcg3sooqMLUyKIhT](upload://>>>><<<<.jpeg)

如何将其映射到此(反之亦然):

"//127.0.0.1:4200/uploads/default/original/1X/abcafdf0e1d9262d515075420e4d940718796a5d.jpeg"

显示为 Uploadurl 属性。

您可以使用此函数:

然后查找数据库中的 SHA1 以查找上传记录。

2 个赞

啊,所以那就是 SHA1? 哎呀!

1 个赞

是的,短 URL 和常规 URL 都包含 SHA1。

区别在于长 URL 使用原始的十六进制编码版本,这与数据库中的版本匹配。upload://“短 URL”是相同哈希的 base62 表示形式,因此使用的字符更少。

1 个赞

抱歉,明白了。

所以有一个:

  • Post 中的 short-url
  • url - 上传的原始长网址。
  • SHA1 - 上传过程中生成的。

而你刚才给了我从 short-url 找到 url 的方法。

1 个赞

抱歉,一天还早,所以如果我的目标是_创建_ short-url,我需要将 SHA1 转码为 base62 吗?

您是在 Rails 应用中进行的吗?

如果是,那么您可以使用 upload.short_urlupload.url 来生成 URL。

首先,要查找上传记录,您可以这样做:

sha1 = Upload.sha1_from_long_url(...)
# 或者
sha1 = Upload.sha1_from_short_url(...)

# 然后

upload = Upload.find_by(sha1: sha1)
1 个赞

是的,Rails。我正在从后端上传。

OMGoodness:

Upload.last.short_url

"upload://fkO7C9M7SLRhXjEiFTOSUJIdCgJ.jpeg" :tada:
抱歉 David,我完全错过了!!

至少这个话题为所有感兴趣的人澄清了这一切。

感谢所有信息。

2 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.