簡體   English   中英

通過RestSharp發送非多部分數據

[英]Sending Non Multipart data Via RestSharp

我需要發送一個不能是多部分數據的POST請求,到目前為止我看到的每個答案都是為了更改RestSharp的http.cs文件,但我不熟悉如何解決這個問題。

我的代碼:

        var POST_LTFSclient = new RestClient("https://xxxx");
        var POST_LTFSrequest = new RestRequest(Method.POST);
        POST_LTFSrequest.AddHeader("Authorization", "Token " + Token);
        POST_LTFSrequest.AddHeader("Accept", "Application/xml");
        POST_LTFSrequest.AddHeader("Content-type", "Application/xml");
        POST_LTFSrequest.AddFile("content", @"C:\xxx\xxx\xxx.xml");

最后一行不能只是:

        POST_LTFSrequest.AddFile(@"C:\xxx\xxx\xxx.xml");

但正因為如此,每次發送數據的嘗試總是多部分的。 不幸的是接收方不接受這個。

無論如何要解決這個問題很容易實現,如果沒有,有人可以向我解釋我如何更改Restsharp以允許這個作為選項。

所以事實證明,因為RestSharp發生了很大的變化,我發現的答案都已過時......

我無法找到關於這個問題的更多信息,所以我不得不離開restSharp。

我提出的解決方案如下:

 using (WebClient client = new WebClient())
        {
            client.Headers.Add("Content-Type", "application/xml");
            client.Headers.Add("Accept", "application/xml");
            client.Headers.Add("Authorization", "Token " + Token);
            using (Stream fileStream = File.OpenRead(@"C:\xxx\yyy\zzz.xml"))
            using (Stream requestStream = client.OpenWrite(new Uri("https://xxx/yyy/zzz"), "POST"))
            {
                fileStream.CopyTo(requestStream);
            }

        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM