当前位置: 首页 > 知识库问答 >
问题:

HttpClient POST生成GET

甘祺
2023-03-14

睡眠不足和长时间盯着代码看让我屈服了。

我的问题是:

我想在我的c#Forms应用程序中发送一个POST请求,并检索结果。

除了发送POST正文之外,一切都正常:请求结果是空的,而不是我的内容,正如我很久以后才发现的那样,使用了GET请求方法。

服务器端不应该是问题,当我通过网络形式(超文本标记语言)发送请求时,一切正常。

c#:

async Task<string> reqres(string name, string logs)
{
    using (var client = new HttpClient())
    {
        string handler = settings.handler;  // php script on server

        var values = new Dictionary<string, string>();
        values.Add("name", name);
        values.Add("logs", logs);

        var response = await client.PostAsync(hand, new FormUrlEncodedContent(values));
        var contents = response.Content.ReadAsStringAsync().Result;
        return contents;
    }
}

我总是从我的服务器得到响应,但服务器总是说它收到了get请求。

以下是我的服务器输出:

PHP:

Array
    (
        [CONTENT_TYPE] => application/x-www-form-urlencoded
        [DOCUMENT_ROOT] => /path/account/example.com/index
        [GATEWAY_INTERFACE] => CGI/1.1
        [HTTP_CONNECTION] => Keep-Alive
        [HTTP_HOST] => www.example.com
        [PATH] => /bin
        [PHPRC] => /etc/php5.3/cgi/example.com
        [QUERY_STRING] => 
        [REDIRECT_STATUS] => 200
        [REMOTE_ADDR] => xx.xxx.xx.xxx
        [REMOTE_PORT] => 60149
        [REQUEST_METHOD] => GET
        [REQUEST_URI] => /path/script.php
        [SCRIPT_FILENAME] => /path/account/directory/index/path/script.php
        [SCRIPT_NAME] => /path/script.php
        [SERVER_ADDR] => xxx.x.xxx.xxx
        [SERVER_ADMIN] => webmaster@example.com
        [SERVER_NAME] => www.example.com
        [SERVER_PORT] => 80
        [SERVER_PROTOCOL] => HTTP/1.1
        [SERVER_SIGNATURE] => Apache/2.2.22 Server at www.example.com Port 80

谁能告诉我怎么了?什么打动了你的眼睛?这个问题的根源是什么?


共有1个答案

茅鸿宝
2023-03-14

AAAAAAAARGH!诅咒!

这毕竟是一个重定向...

我让200(好)骗我去别处找。。。JonStirling善意地让我意识到,在此之前可能还会发生重定向。

当然,在我确定自己没有被重新定向之后!www-

呃...我真的认为在这种情况下层次执行得很糟糕

 类似资料:
  • 服务器:版本:1.12.6 API版本:1.24 Go版本:Go1.6.3 Git提交:78D1802 build:Tue Jan 31 23:47:34 2017 OS/arch:linux/amd64 Docker--Version docker Version1.12.6,构建78D1802 docker-compose-版本docker-compose版本1.5.2,构建未知

  • 我试图建立APK,以张贴我的请求在离子在游戏商店。但是当涉及到下面的命令时,我得到了错误: PS c:\projetos\xxx>jarsigner-verbose-sigalg sha1withrsa-digestalg sha1-keystore android.keystore platforms/android/app/build/outputs/apk/release/app-relea

  • 我正在尝试将一个网站从Heroku迁移到AWS,但在代码构建方面遇到了麻烦。源代码在GitHub上,我使用的是CodePipeline-CodeBuild-Elastic Beanstalk。管道运行良好,代码似乎正在向Elastic Beanstalk过渡。然而,我被困在代码构建步骤。(buildspec.yml如下所示) 日志似乎可以很好地运行命令,但是当我将构建输出到S3存储桶时,没有构建文

  • 1、创建 list 的方式 之前经过我们的学习,都知道如何创建一个 list ,可是有些情况,用赋值的形式创建一个 list 太麻烦了,特别是有规律的 list ,一个一个的写,一个一个赋值,太麻烦了。比如要生成一个有 30 个元素的 list ,里面的元素为 1 - 30 。我们可以这样写: # -*- coding: UTF-8 -*- list1=list ( range (1,31) )

  • 我正在尝试使用Eclipse为一个涉及Gazebo(一个流行的机器人模拟器)的项目进行开发。Gazebo提供了一个插件系统,允许与模拟器进行外部交互,并提供了一系列关于如何编写插件的教程。 在成功地学习了这些教程之后,我尝试将代码迁移到Eclipse,使用cmake-g“Eclipse cdt4-unix makefiles”[buildpath]生成一个Eclipse rpoject,然后将其导

  • 这篇文档阐述了如何通过使用Django视图动态输出PDF。这可以通过一个出色的、开源的Python PDF库ReportLab来实现。 动态生成PDF文件的优点是,你可以为不同目的创建自定义的PDF -- 这就是说,为不同的用户或者不同的内容。 例如,Django在kusports.com上用来为那些参加March Madness比赛的人,生成自定义的,便于打印的 NCAA 锦标赛晋级表作为PDF

  • 这篇文档阐述了如何通过使用Django视图动态输出CSV (Comma Separated Values)。 你可以使用Python CSV 库或者Django的模板系统来达到目的。 使用Python CSV库 Python自带了CSV库,csv。在Django中使用它的关键是,csv模块的CSV创建功能作用于类似于文件的对象,并且Django的HttpResponse对象就是类似于文件的对象。

  • 圣灵所结的果子,就是仁爱、喜乐、和平、忍耐、恩慈、良善、信实、温柔、节制。这样的事,没有律法禁止。凡属基督耶稣的人,是已经把肉体连肉体的邪情私欲同钉在十字架上了。我们若是靠圣灵得生,就当靠圣灵行事。不要贪图虚名,彼此惹气,互相嫉妒。(GALATIANS 5:22-26) 生成器 上节中,我们曾经做过这样的操作: >>> my_tup = (x**x for x in range(4))>>> my