首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用RestSharp时,我在帖子上看到了MethodNotFound,但响应认为这是GET吗?

使用RestSharp时,我在帖子上看到了MethodNotFound,但响应认为这是GET吗?
EN

Stack Overflow用户
提问于 2014-09-24 13:21:20
回答 2查看 4.2K关注 0票数 3

我正在使用RestSharp,并且第一次写了一篇文章,我有很多GET请求,这些请求都很好。Rest服务在python中,但我不认为这对这个问题至关重要。这是我的代码:

代码语言:javascript
复制
   var client = new RestClient { BaseUrl = _baseUrl };

  var request = new RestRequest("nameOfPostMethod", Method.POST);
  request.RequestFormat = DataFormat.Json;
  request.AddBody(new { name, description });
  request.AddHeader("accept", "application/json");

  var response = client.Execute(request);

以下是我得到的原始回应:

代码语言:javascript
复制
    [{"name": "405 - Method Not Allowed", "data": 
    [["Class", "werkzeug.exceptions.MethodNotAllowed"], ["Category", "Client Error"], 
     ["Code", "405"], ["Name", "Method Not Allowed"], ["request.method", "GET"], 
     ["request.url", "http://myUrl/nameOfPostMethod"], ["error.message", "405 Method
    Not Allowed"], ["error.description", null]]}]

最突出的是这句话,它似乎认为我在写一篇文章,而不是一篇文章:

代码语言:javascript
复制
 ["request.method", "GET"]

 ["error.message", "405 Method Not Allowed"]

对我可能做错了什么有什么建议吗?

更新:

我下载了小提琴,并试图看到发生了什么,有趣的是,当我看标题,它确实显示了一个GET。这是我在小提琴里看到的截图:

我甚至试图改变:

代码语言:javascript
复制
  client.Execute(request);

代码语言:javascript
复制
  client.Post(request);

但它仍然显示了同样的东西。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-30 13:52:04

原来这是一个在was服务器端的重定向问题,所以与Rest无关

我要求删除这个问题,以避免混淆。

票数 4
EN

Stack Overflow用户

发布于 2014-09-29 21:17:04

这是跨域请求吗?如果是这样的话,那么我怀疑RestSharp在执行实际的HTTP之前正在发出一个CORS预运行请求。如果不允许跨域POST,"405方法不允许“是对CORS请求的正确响应。我不确定这个屏幕快照是否显示了所有的HTTP头。它是否在GET中发送访问控制-*头文件?这就证实了这一点。

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

https://stackoverflow.com/questions/26018047

复制
相关文章

相似问题

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