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

REST JSON GET - 400错误请求

亢保赫
2023-03-14

我正在使用Basecamp API,它是一个REST(JSON)API,使用HTTPS上的基本HTTP身份验证。

这应该是一个GET请求,但当我使用GET运行我的代码时,我收到了:

无法发送包含此谓词类型的内容正文

当我将其作为POST运行时,我会收到:

{“状态”:“400”,“错误”:“错误的请求”}

有谁知道为什么会发生这种情况?

    using (var httpClient = new HttpClient()) {

        string userName = "someone@someone.com";
        string password = "somepassword";

        var credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes(string.Format("{0}:{1}", userName, password)));

        httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", credentials);

        HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Post, "https://correctUrlHere);
        requestMessage.Headers.Add("User-Agent", "TheProject (someone@someone.com)");
        requestMessage.Content = new StringContent(string.Empty, Encoding.UTF8, "application/json");

        var response = await httpClient.SendAsync(requestMessage);

        var responseContent = await response.Content.ReadAsStringAsync();

        Console.WriteLine(responseContent);
    }

在此代码中,我显然交换了用户名,密码,项目名称和URL,但在实际代码中它们都是正确的。

共有1个答案

濮阳翔
2023-03-14

GET请求必须将其参数作为url查询传递,而不是作为请求正文。

http://example.com?p1=1&p2=helloworld 

如果您没有任何内容,如您的示例所示,请省略在请求中设置它。

BadRequest结果表明您的有效负载有一些错误(同样:内容似乎是空的)。

 类似资料:
  • 我有一个基于Spring Web model view controller(MVC)框架的项目。Spring Web模型-视图-控制器(MVC)框架的版本是3.2.8 我有这个控制器 这个URL一切正常:

  • 目前从Angular JS controller中,我试图将JSON数据发送到后端服务。但是我有400个错误的请求错误。 在Controller中,我试图通过http服务发送数据,如下所示:

  • 目标是通过ajax将对象发送到另一台服务器,这是我为CORS设置的,下面是代码。ajax代码片段: 正确发布数据,但使用

  • 我正在尝试搜索亚马逊的产品广告,并使用botlenose来帮助我做到这一点。但是,我刚刚收到HTTP错误400。 其他一些重要信息: 我来自巴西,我的标签也来自亚马逊。这是个问题吗? 我确实检查了我的钥匙、秘密和标签,一切正常。我确实在StackOverflow上查看了其他一些问题,但对我来说没有任何效果。 当然,出于安全原因,我更改了密钥。 Traceback(最近一次调用最后一次):File"

  • 我正在使用实现一个联系人应用程序。现在,我正试图通过发送以下格式的put请求来更新联系人 我将XML作为字符串发送,作为请求的主体。这是我的xmlString(请求主体) 我写了下面的代码来发送更新联系人的PUT请求。 当我试图在中发送请求时,联系人更新成功。但是当我试图运行上面的程序时,我得到了 400错误请求错误 我不知道我哪里出错了。任何帮助都将不胜感激!

  • 我正在使用postman客户端应用程序进行rest let的POST类型请求。对于我的URL,我传递了一个查询参数。当我将一个小JSON字符串作为值传递时,它被传递得非常好,但当我将一个大JSON字符串作为值传递时,它会抛出一个错误,错误为Bad Request 400 error。无法找出问题所在以及如何调试和修复问题。 有人能帮我吗? 谢谢你~Sha公司

  • 对于下面的代码,我收到了一个400错误的请求 下面是stacktrace

  • 问题内容: 我有一段这样的代码 当我输入的查询超过一个词,例如“狗”时,出现以下错误。 谁能指出我做错了什么?提前致谢。 问题答案: “狗”返回400错误的原因是因为您没有转义URL的字符串。 如果您这样做: 会的。 但是,我强烈建议您使用请求,而不要使用urllib / urllib2 / httplib。这要容易得多,它将为您处理所有这一切。 这是与python请求相同的代码: