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

RestSharp发布一个JSON对象

桂智志
2023-03-14
问题内容

我正在尝试使用RestSharp发布以下JSON:

{"UserName":"UAT1206252627",
"SecurityQuestion":{
    "Id":"Q03",
    "Answer":"Business",
    "Hint":"The answer is Business"
},
}

我想我已经接近了,但是我似乎在为 SecurityQuestion 苦苦挣扎(API抛出错误,表明缺少参数,但没有说明是哪个参数)

这是我到目前为止的代码:

var request = new RestRequest("api/register", Method.POST);
request.RequestFormat = DataFormat.Json;

request.AddParameter("UserName", "UAT1206252627");

SecurityQuestion securityQuestion = new SecurityQuestion("Q03");
request.AddParameter("SecurityQuestion", request.JsonSerializer.Serialize(securityQuestion));

IRestResponse response = client.Execute(request);

我的安全问题类如下所示:

public class SecurityQuestion
{
    public string id {get; set;}
    public string answer {get; set;}
    public string hint {get; set;}

    public SecurityQuestion(string id)
    {
         this.id = id;
         answer = "Business";
         hint = "The answer is Business";
    }
}

谁能告诉我我在做什么错?还有其他方法可以发布安全性问题对象吗?

非常感谢。


问题答案:

您需要在标题中指定content-type:

request.AddHeader("Content-type", "application/json");

AddParameter根据方法添加到POST或URL查询字符串

我认为您需要像这样将其添加到主体中:

request.AddJsonBody(
    new 
    {
      UserName = "UAT1206252627", 
      SecurityQuestion = securityQuestion
    }); // AddJsonBody serializes the object automatically


 类似资料:
  • 问题内容: 我正在尝试将JSON发布到WCF服务。json对象包含一个数组。我想知道如何正确绑定到我的数据合同。如果有人可以在这里给我指点,我将不胜感激。目前,我的购物车对象为null 我的服务界面如下所示: 我的客户电话如下 客户电话 我的JSON看起来像这样 问题答案: Fiddler对WCF REST方法的原始请求应如下所示: JSON中的响应如下所示:

  • 控制器: 当post执行时,我会得到以下错误: servlet[dispatcherServlet]的servlet.service()在路径[]上下文中抛出异常[请求处理失败;嵌套异常是org.springframework.http.converter.httpmessageConversionException:类型定义错误:[simple Type,class de.lukas.broet

  • 我正在做一个项目,我请求一个api发布一个项目的详细信息。下面是我试图使用HttpRequest插入body itemstr的代码 这是我的newItem类 我试图将itemStr作为一个主体发布到本地运行的restful API。我可以使用GET请求检索,但不能发布。

  • 我发现了一个youtube视频如何做一个get url,但我需要做一个帖子到一个REST API。我不知道怎么做。 我试着看看这里,但大部分都是Java。 使用GET,我只收到一个错误,因为我没有执行POST请求。

  • 问题内容: 我已经开始尝试使用Django REST框架。到目前为止,我已经成功地为我的对象创建了一个序列化程序,通过Javascript的$ .post()创建了发布视图,发布对象和返回对象。因此,现在我可以在JSON和Django模型对象之间进行适当的转换。 问题是我有一个对象数组[A1,A2,…,An]。现在,当我需要发布这样的数组时,我逐个对象地进行处理。是否有可能一次发布整个数组,并在D

  • 我需要以这种格式发布一个对象: 我试过: 但是服务器返回了一个错误的请求。我认为数据的格式无效。 如何更改代码以将数据转换为正确的格式? 谢谢你!