1

我使用 .NET 的 Convert.ToBase64String 创建了一个“加密的”电子邮件验证链接。很少,我被告知链接被拆分,好像新的 srting 中有新的行。那可能吗?很可能只是电子邮件客户端问题,但我想确定...

4

3 回答 3

3

换行符的插入由此重载的第二个参数控制:

public static string ToBase64String(
    byte[] inArray
,   Base64FormattingOptions options
)

如果你通过Base64FormattingOptions.InsertLineBreaks了,你会得到换行符;否则,你不会得到换行符。

单参数重载不会插入中断。

于 2012-06-27T21:00:35.243 回答
2

是的,这是可能的——如果你通过它Base64FormattingOptions.InsertLineBreaks,你将每 76 个字符换行一次。

不过,默认情况下不应该有换行符。

于 2012-06-27T21:00:53.420 回答
2

对于处理 URL,建议使用它HttpServerUtility.UrlTokenEncode

http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.urltokenencode.aspx

将 Convert.ToBase64String 用于 URL 存在一些已知问题。

http://tipsforcdevelopers.blogspot.co.uk/2009/05/difference-between-converttobase64strin.html

于 2012-06-27T21:10:02.660 回答