我正在将一个java应用程序移植到C#。有一个带有一些键值对的HTTP请求。不需要认证。我还得到了一个工作的python示例,它以类似的方式发布。端点很好。
我已经尝试过HTTPClient和RestSharp的类似结果。
我想知道我是不是做错了,我在做这样的事情:
var values = new Dictionary<string, string>
{
{ "A", a },
{ "B", b },
{ "C", c },
{ "D", d }
}
var content = new FormUrlEncodedContent(values);
Uri u = new Uri(myURI);
var response = await client.PostAsync(u,content);
var responseString = await response.Content.ReadAsStringAsync();
python看起来非常类似于以下内容:
>>> payload = {'key1': 'value1', 'key2': 'value2'}
>>> r = requests.post("https://httpbin.org/post", data=payload)
>>> print(r.text)
java和python示例看起来非常相似,构建一个参数列表并发布。其余的锐利看起来相似,但也失败与同样的错误。我在找一些我不知道的尝试。标题或内容类型是否发生更改?以不同的方式提交数据?我在这里迷路了。
发布于 2020-10-28 03:40:09
根据问题中的评论,Fiddler被建议诊断这个问题。
Fiddler很好地格式化了显示无效参数的响应文本。参数已修正,一切正常。
https://stackoverflow.com/questions/64563822
复制