【问题标题】:C# REST - Send Request Body, Receive Response BodyC# REST - 发送请求正文,接收响应正文
【发布时间】:2016-08-13 09:37:22
【问题描述】:

我正在使用 WebClient 类。我对带有 GET 的 OpenReadTaskAsync 方法有一些运气,但现在,我想调用 POST 或 PUT REST 方法。我想我应该使用 UploadStringTaskAsync。但是,当我在一个正常工作的 REST 服务上调用这个方法时,我得到了这个错误:

System.Net.WebException:在 WebClient 请求期间发生异常。 ---> System.NotSupportedException:此请求不支持指定的方法。 在 System.Net.Browser.BrowserHttpWebRequest.set_Method(字符串值) 在 System.Net.WebClient.GetWebRequest(Uri 地址) 在 System.Net.WebClient.UploadStringAsync(Uri 地址,字符串方法,字符串数据,对象 userToken) --- 内部异常堆栈跟踪结束 --- 在 Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在 Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(任务任务) 在 Microsoft.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 在 CF.RESTClientDotNet.Silverlight.Sample.MainPage.d__3.MoveNext()

这是代码

var webClient = new WebClient();
var returnValue = await webClient.UploadStringTaskAsync(uri.AbsoluteUri, "POST", bodyString);

【问题讨论】:

  • 基于 StackTrace 我会说服务器不希望你 POST ......你可以改变客户端来克服这个......
  • 检索服务的http头来知道允许的动词..

标签: c# .net rest silverlight


【解决方案1】:

我最终彻底重新设计了我的图书馆。这里有示例:

https://bitbucket.org/MelbourneDeveloper/restclient-.net/src/master/

NuGet:安装包 RESTClient.NET

【讨论】:

    猜你喜欢
    • 2011-05-05
    • 1970-01-01
    • 2016-11-30
    • 2019-01-22
    • 1970-01-01
    • 2018-04-17
    • 2011-07-20
    • 2014-10-03
    • 1970-01-01
    相关资源
    最近更新 更多