gpt4 book ai didi

c# - HttpUtility.ParseQueryString 缺少一些字符

转载 作者:行者123 更新时间:2023-12-04 17:15:47 27 4
gpt4 key购买 nike

我正在尝试提取带有 + 特殊字符的电子邮件,但由于某种原因 ParseQueryString 跳过它:

namespace ParsingProblem
{
class Program
{
static void Main(string[] args)
{
var uri = new System.Uri("callback://gmailauth/#email=mypersonalemail15+1@gmail.com");
var parsed = System.Web.HttpUtility.ParseQueryString(uri.Fragment);
var email = parsed["#email"];
// Email is: mypersonalemail15 1@gmail.com and it should be mypersonalemail15+1@gmail.com
}
}
}

最佳答案

URL 中的 + 符号被解释为空格字符。要解决此问题,您需要先对电子邮件地址进行 URL 编码。例如:

var urlEncodedEmail = System.Web.HttpUtility.UrlEncode("mypersonalemail15+1@gmail.com");
var uri = new System.Uri($"callback://gmailauth/#email={urlEncodedEmail}");
var parsed = System.Web.HttpUtility.ParseQueryString(uri.Fragment);
var email = parsed["#email"];

关于c# - HttpUtility.ParseQueryString 缺少一些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68771314/

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