模型绑定在 webapi 2.0 中失败



我正在使用Webapi 2.0。我正在传递一个参数,其值为 vb/c4t+UuRLnQ2W/g8SQ== 模型绑定后,我在代码中将 authId 的值作为 vb/c4t UuRLnQ2W/g8SQ== (+( 符号被替换为空格。你能帮我解决我怎么能得到它吗?

Url: api/employee/1234?authId=vb/c4t+UuRLnQ2W/g8SQ==

[HttpGet]
public IHttpActionResult Get(string eid, string authId)
{
}
+

符号在查询字符串中具有不同的含义。它用于表示空间。查询字符串中具有语义重要性的另一个字符是&,用于分隔查询字符串中的各种var=value对。

大多数服务器端脚本会在使用查询参数之前对其进行解码,以便将+正确转换为空格。现在,如果您希望在查询字符串中存在文本+,则需要改为指定%2B

示例yourString.replace("+","%2b")

替代方法:您应该URLEncode查询字符串值以确保不会丢失内容。

另一种替代方法是为+符号创建自己的代码。 例如,12sfdhjsj8722nsn2232dfsdd将表示+符号。 因此,您可以将 + 号替换为代码,在服务器端,您可以使用相同的代码将其取回。

相关内容

  • 没有找到相关文章

最新更新