当前位置: 首页 > 面试题库 >

c#httpclient PostAsJson发送GET请求而不是POST

景辰钊
2023-03-14
问题内容

我正在使用HttpClient发出发布请求。我回到405方法不被允许。在提琴手中捕获轨迹时,它作为GET而不是POST发出!

using (var client = new HttpClient())
            {
                var url = AppSettingsUtil.GetString("url");
                var response = client.PostAsJsonAsync(url, transaction).Result;
            }

我知道异步/等待问题。这是显示问题的简化示例

是否存在某种可能会影响此的web.config或machine.config设置?其他请求(通过RestSharp发送)正确发送了帖子

这是提琴手捕获的东西。在提琴手中运行跟踪也会返回405(如预期)。手动将其切换为POST并从fiddler运行作品。

另外,也许因为方法已切换为GET,所以提琴手中没有捕获任何主体,所以我不得不手动粘贴到JSON中

GET /*URL*/ HTTP/1.1
Content-Type: application/json; charset=utf-8
Host: /*host*/
Connection: Keep-Alive

问题答案:

问题似乎是有人在未告知我们的情况下更改了URL,因此他们将重定向设置到位。HttpClient正在响应重定向,但实际上最终将请求作为Get发送到最终目的地。

在我看来,这似乎是HttpClient中的错误,它应该将最终请求作为Post发送,或者抛出异常,说它无法执行我要求的操作。



 类似资料:
  • 请求方式: "|3|1|url|\r" 参数: url 设置Get请求的url链接 返回值: "|3|code|data|\r" 参数: code http请求返回的成功或者错误码, 成功:code = 200 获取数据失败:code = -1 http请求字段错误:code = 1 data http请求返回的数据 Arduino样例: softSerial.print("|3|1|http:/

  • 本文向大家介绍C#创建和发送HTTP GET请求,包括了C#创建和发送HTTP GET请求的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 我试图在端口80上建立一个连接localhost并发送一个简单的http get请求,同时运行wireshark并查看报头。下面是我的代码: 但当我编译并运行它时,它会给我带来很多错误。这是Errros的图像。发生此错误后,我将send函数更改为这个 send(sockfd,“get/http/1.1\r\n host:localhost\r\n\r\n”,strlen(“get/http/1.1

  • 我试图做简单的超文本传输协议后请求使用以下代码:Golang代码从另一个SO后 它发送了两次http请求(我尝试了向自己的web服务和Firebase消息服务器发送)。有人知道怎么回事吗?非常感谢。 编辑忽略我,找出是AVG反病毒造成的问题。如果我这样做:然后按enter键一次,AVG会中断,说它已经扫描了它,然后让它运行。这会导致http调用两次。如果我在运行前禁用了防病毒软件,那么http请求

  • 问题内容: 我想将我的网址发送到(和)。 我当前的请求代码不起作用。 使用是 不是 一个容易回答。 问题答案: 在iOS中发送和请求非常容易。无需其他框架。 请求: 首先,将我们的(按需发送的内容)创建为,然后将其转换为。 目标 接下来,我们阅读的,因此我们可以将其传递给请求。 现在我们有了要发布的内容,我们可以创建一个,并包含我们的。 迅速 最后,我们可以发送请求,并通过创建新的请求来阅读回复:

  • 我正在学习春靴和反应现在。 book.js bookresourceimp.java