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

如何使用放心发送XML post请求?

澹台浩广
2023-03-14

我必须发送一个带有xml数据的post请求,然后验证响应,例如检查状态代码和响应体。

共有1个答案

党浩阔
2023-03-14

您可以传递一个pojo(记住将content-type设置为application/xml),rest assured会自动将其转换为XML。例如:

@XmlRootElement
public class Greeting {
    private String firstName;
    private String lastName;

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
}

然后您可以这样使用它:

Greeting greeting = new Greeting();
greeting.setFirstName("John");
greeting.setLastName("Doe");

given().contentType(ContentType.XML).and().body(object).when().post("/somewhere"). ..

它将发送以下XML:

<greeting>
   <firstName>John</firstName>
   <lastName>Doe</lastName>
</greeting>
given().
        contentType(ContentType.XML).
        body(object).
when().
        post("/somewhere").
then().
        statusCode(200).
        body("greeting.firstName", equalTo("John")).
        body("greeting.lastName", equalTo("Doe"));

如果服务器返回一个XML内容类型,那么REST Assured将自动理解响应主体是XML。请注意,equalto是从org.hamcrest.matchers#equalto静态导入的。

 类似资料:
  • 我需要发送https请求,请放心,有c.crt证书和公钥。密钥,如果我的证书和密钥在项目中,我该如何发送请求

  • 下面是预期的请求,它应该命中系统,但在发送它时,数组变成字符串? 为了生成上述内容,我正在创建Array对象并发送请求,但结果是这样的放心请求。 实际 由于上述实际结果,api 将其视为子类的字符串,而不是将其视为数组。但代码希望它是子类的数组。 我正在使用hasmap创建上面的内容。这样地 queryParam将以jsonbody的身份出现。 现在如何按预期发送 json 正文,而不是实际的 j

  • 我花了很长时间弄清楚一些使用Jayways版本的JsonPath,我的查询如下: 但是,这不适用于Rest Assured,在执行时,我会看到以下错误: 是否需要以格式重写此表达式?如果是这样,那会是什么样子?或者,我可以以某种方式让Rest-Asken使用这个首选的JsonPath表达式吗? 下面是一段小的[WIP]代码,目前正在尝试使表达式工作,然后我将正确地修复该方法:

  • 问题内容: 我正在尝试向SOAP Web服务发送请求。我阅读了本教程并准备了以下代码。但是,我将向多个SOAP Web服务发送不同的请求,而本教程只关注一个请求。如何使用发送SOAP请求? WebServiceTemplate 问题答案: 您可以使用以下代码,而无需在xml文件中定义任何内容。

  • 问题内容: 我不想使用文件,但是只有django才需要发出POST请求。 就像发送请求一样。 问题答案: 结合使用urllib2和urllib中的方法即可解决问题。这是我使用这两种方法发布数据的方式: 是用于打开URL的方法。 将参数转换为百分比编码的字符串。

  • 我有一个很长的JSON正文,这是一个数组。我需要在POST方法的正文中发送这个。我使用放心。怎么做?