gpt4 book ai didi

.net - Base64 编码替代下划线

转载 作者:行者123 更新时间:2023-12-05 08:35:14 37 4
gpt4 key购买 nike

我们使用文件系统/url 安全的 base64 编码变体,这样:

"=" replaced with ""  
"+" replaced with "-"
"/" replaced with "_"

我们现在使用的 Azure Blob 存储不允许在容器名称中使用“_”。

我们正在对Guid进行base64编码。如果我用“0”替换下划线,我是否有冲突的风险?

更新

不知道为什么投反对票。但需要澄清一下。

为什么不直接使用 Guid?

  1. Guid 是我的应用程序中实体的 ID。由于路径是公共(public)的,我不太喜欢公开 Id,因此我要对其进行编码。
  2. 我想要更短、更友好的路径。与下面的评论之一相反,base 64 编码并不更长:

    指南:5b263cdd-2bc2-485d-83d4-81b96930dc5a
    Base64 编码:3TwmW8IrXUiD1IG5aTDcWg==(删除 == 后更短)

(另一个)更新

似乎对于我想要实现的目标有些困惑(对此深感抱歉)。这是简短版本。

  • 我有一个 Guid 来代表我的应用程序中的一个实体。
  • 我需要为该实体创建一个可公开访问的目录(通过一个网址)。
  • 我不想使用 Guid 作为目录名称,原因如下多于。
  • 我之前曾在 SO 上询问过如何才能生成一个更友好的人寻找保证唯一性且不会暴露的 URL原始指南。建议采用 Base64 编码。
  • 直到最近我们需要使用 Azure blob 时,这一切都运行良好storage,其目录中不允许有下划线“_”(容器)名称。

这就是我现在的位置。

最佳答案

只需在 base16 中“编码”GUID 即可。它使用的唯一字符是 0123456789ABCDEF,这对于大多数用途来说应该是安全的。

var encoded = guid.ToString("N");

关于.net - Base64 编码替代下划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6857925/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com