代码之家  ›  专栏  ›  技术社区  ›  autonomatt

如何使用wcf rest(starter kit)创建http post请求正文内容

  •  1
  • autonomatt  · 技术社区  · 16 年前

    我正在集成一个应用程序 ZenDesk . 他们有一个 REST API . 我需要在请求体中发送pox。我在用wcf rest启动套件。

    如何以编程方式将XML添加到请求正文中?

    这是我的单元测试:

            [Test]
            public void Can_create_user()
            {
                // Arrange
                http = new HttpClient("http://myapp.zendesk.com/");
                http.TransportSettings.Credentials = new NetworkCredential
                                                   ("joe@admin.com", "passW0rd");
                http.DefaultHeaders.Accept.Add("application/xml");
                var form = new HttpUrlEncodedForm();
                var expectedStatusCode = 201;
    
                var request = new XDocument(
                    new XElement("user",
                                 new XElement("email", "joe@user.com"),
                                 new XElement("name", "Joe User"),
                                 new XElement("roles", "4"),
                                 new XElement("restriction-id", "4")));
    
                form.Add("body", request.ToString());
    
                // Act
                var response = http.Post("users.xml", form.CreateHttpContent());
                var content = response.Content.ReadAsString();
    
                // Assert
                response.EnsureStatusIs(expectedStatusCode);
    
    1 回复  |  直到 10 年前
        1
  •  1
  •   autonomatt    16 年前

    解决方案是使用静态方法microsoft.http.httpcontent.create()

    var response = http.Post("users.xml", HttpContent.Create(requestXML.ToString()));
    
    推荐文章