在邮递员上而不在应用程序中工作的邮递员C#代码段

时间:2019-03-13 18:04:09

标签: c# xml postman

我有一个XML文件,该XML文件作为表单数据发送到远程服务器。当我使用邮递员时,我会收到应该收到的回复。

Postman response

然后,我使用代码片段生成器将调用移植到我的C#应用​​程序中,当我在该应用程序上运行时,该调用不起作用。

C# response

代码段为:

var client = new RestClient("http://172.20.27.1/xxxxxx/xxxxxx");
var request = new RestRequest(Method.POST);
request.AddHeader("Postman-Token", "1d9df75d-2c8f-4c92-b861-9f4291145846");
request.AddHeader("cache-control", "no-cache");
request.AddHeader("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
request.AddParameter("multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW", "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"Metas\"; filename=\"C:\\Users\\agufprad\\Desktop\\Pepillo\\FLEX_REMAN_CfgRec_Final_00-00-00-4D_20190311-102223_1010039188_7000AHB.xml\"\r\nContent-Type: application/xml\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

我在这里没看到什么吗?

3 个答案:

答案 0 :(得分:1)

可以导出并上传邮递员收藏吗?这会很有帮助。

我很快发现了几件事

1)您有一个邮递员令牌标头-为什么在C#中需要此标头?

2)没有多部分数据有效吗?

3)您确定内容类型应该具有边界数据吗?

4)没有与该片段关联的文件。可以肯定,您不能只是AddParameter多部分数据。寻找AddFile,这可能是您遇到的问题。

5)网上有没有例子?目前看来,这将是格式错误的多部分请求

答案 1 :(得分:1)

感谢大家的回答,让我们知道了在哪里看。

最后,我在post方法request.AddHeader("Accept", "text/plain");

上添加了标题

并添加文件request.AddFile(fileName, Properties.Settings.Default.SaveRoute + fileName);

非常感谢!

答案 2 :(得分:1)

我建议您删除从Postman上的代码生成器生成的所有content-length参数,postman-token,cookie参数,并且它应作为自己的特定请求使用。

删除

 request.AddHeader("Postman-Token", "1d9df75d-2c8f-4c92-b861-9f4291145846");