首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >调用web方法错误“远程服务器返回一个错误:(405)方法不允许”

调用web方法错误“远程服务器返回一个错误:(405)方法不允许”
EN

Stack Overflow用户
提问于 2014-10-02 01:56:10
回答 1查看 2.9K关注 0票数 0

从MVC控制器调用Web方法返回以下错误:

“远程服务器返回一个错误:(405)方法不允许”

在MVC控制器操作代码下面调用一个助手类方法,在调试过程中,我可以看到控件从这里移动到下一个方法:

代码语言:javascript
运行
复制
public ActionResult Submit(FormCollection form)
{
    Lead_Options lead = new Lead_Options();            
    lead.Situation = form.GetValue("InsuranceFor").AttemptedValue;
    lead.State = form.GetValue("InsuranceState").AttemptedValue;

    Uri url= Url_Helper.GetUri(BaseUrl, service1+"Post"); // returns http://localhost:52985/api/HealthInsurance/Post

    string obj=  new JavaScriptSerializer().Serialize(lead);

    Object data = WebApi_Helper.PostData(url,obj);

    return RedirectToAction("Parameters");
}

"WebApi_Helper.PostData“是Helper类,这是一个用于调用web的通用方法:

代码语言:javascript
运行
复制
   public static string PostData(Uri url,string obj)
   {
       string data = null;

       try
       {
           using (WebClient proxy = new WebClient())
           {
               proxy.Headers.Add(HttpRequestHeader.Accept, "application/json");
               data = proxy.UploadString(url,"Post", obj); //Here got error
           }
       }
       catch (Exception ex)
       {               
           throw ex;
       }
       return data;
   }

下面是WebAPI方法代码,但是在调试请求时,根本不来这里

代码语言:javascript
运行
复制
[HttpPost]
public void Post(string  lead)
{
    //leadOptService.AddListOptions(lead);
}

请告诉我我做错了什么,如何解决。

EN

回答 1

Stack Overflow用户

发布于 2014-10-02 05:00:50

HTTP方法是大小写敏感。试着:

代码语言:javascript
运行
复制
data = proxy.UploadString(url,"POST", obj);

代码语言:javascript
运行
复制
data = proxy.UploadString(url, obj); // this overloads POSTs the data

而且,HttpPost属性是多余的,因为按照约定,Web只允许POST用于public void Post(string lead)

作为一种良好的实践,Post应该返回一个值。在最起码的情况下,状态代码201 (表示成功)或500 (表示错误)的HttpResponseMessage以及适用的rcode。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26153387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档