gpt4 book ai didi

c# - 在 POST 方法、HttpClient 中使用 application/x-www-form-urlencoded

转载 作者:太空狗 更新时间:2023-10-29 23:22:00 24 4
gpt4 key购买 nike

如果我要发送此数据怎么办:发布参数:

access_token access_token_Value

list Array of array(4对arg)

arg1 arg1_值

arg2 arg2_value

arg3 arg3_值

arg4 arg4_值

在规范中是这样的(POST 参数和返回数组中所有可能的枚举值都在本文档中指定,并用竖线 || 分隔)。我有通用 Windows 应用程序项目。如何将此数据转换为“application/x-www-form-urlencoded”格式?对于像键值这样的普通对,我使用

    var body = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("arg1", "arg1value"),
new KeyValuePair<string, string>("arg2", "arg2value"),
new KeyValuePair<string, string>("arg3", "arg3value"),
new KeyValuePair<string, string>("arg4", "arg4value")
};

var content = new FormUrlEncodedContent(body);
var result = httpClient.PostAsync(uri, content).Result;

这没问题(传输的数据:arg1=arg1value&arg2=arg2value&....),但如果数据与我在本文开头写的相同怎么办?

最佳答案

假设您的键不需要编码(即不包含 URI 中的任何特殊字符),其中名称-值对集合中的字段的值已转换为字符串:

var httpBody = String.Join('&', 
fields.Select(nv =>
String.Concat(nv.Name,
"=",
WebUtility.UrlEncode(nv.Value))));

然后使用适用的编码序列化到 HttpWebRequest 主体中。

关于c# - 在 POST 方法、HttpClient 中使用 application/x-www-form-urlencoded,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28601791/

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