处理查询字符串中的特殊字符

时间:2021-07-18 07:42:33

标签: c# asp.net

我有一个 ASP.NET Core 应用程序,它侦听来自第三方 API 的请求,基本上只是一个带有端点的控制器。此第三方 API 在查询字符串中发送数据,但其中一个参数名称以 # 开头。

[HttpGet("auth")]
public IActionResult Auth([FromQuery] string access_token, [FromQuery] int expires_in)
{
    return Ok();
}

这个参数是一个访问令牌值,所以在 URL 中它看起来像这样:

https://baseUrl?#access_token=something

所以我需要这样声明:

...([FromQuery] string #access_token,...

但是我们不能在变量名中使用 #,那么我应该如何将此查询参数映射到我的方法参数?谢谢。

1 个答案:

答案 0 :(得分:0)

# 不包括在内,它只是一个指示可替换内容的指标

使用 mongodb connect api 时遇到了类似的错误,当他们曾经在他们的连接字符串中有#。
变量/查询字符串的名称中不能有 #,它只是一个指示符。

现在在第三方 api 中,他们使用 <> 来表示可替换的内容/值 像