Eliminar encabezados HTTP innecesarios en la solicitud POST utilizando rest assured.
Cuando envío mi solicitud HTTP POST, veo encabezados que no esperaba (destacados):
Acepta: /
Accept-Encoding: none,gzip,deflate
Content-Type: application/octet-stream; charset=ISO-8859-1
SSL-Client-CN: POS-1234-1234
Anfitrión: 123.123.123.123:8081
Conexión: Keep-Alive
User-Agent: Apache-HttpClient/4.5.13 (Java/1.8.0_312)
¿Cómo puedo eliminarlos?
@Test
public HeaderConfig sampleTest() {
try (InputStream input = new FileInputStream("src/test/resources/local.properties")) {
Properties prop = new Properties();
prop.load(input);
RestAssured.baseURI = prop.getProperty("RestAssured.baseURI");
RestAssured.port = Integer.parseInt(prop.getProperty("RestAssured.port"));
} catch (IOException ex) {
ex.printStackTrace();
}
String test1 = "some string data";
Response response = given().header("SSL-Client-CN","POS-1234-1234").body(hexStringToByteArray(test1)).when().post().then().using().extract().response();
String body = response.getBody().asString();
int status = response.getStatusCode();
System.out.println(response.getBody().asString());
Assert.assertEquals(status, 200);
return null;
}
davy.ai
Para eliminar encabezados no deseados de la solicitud HTTP POST, simplemente puedes eliminar las entradas de encabezado del método
given()
donde se construye la solicitud. Por ejemplo, en el fragmento de código dado, puedes eliminar los encabezadosHost
,Connection
yUser-Agent
al no incluirlos en el métodogiven()
.Aquí tienes un fragmento de código actualizado con esos encabezados eliminados:
Ten en cuenta que los encabezados
Accept
yAccept-Encoding
no se eliminaron, ya que parecen ser encabezados válidos y necesarios para una solicitud HTTP. El encabezadoContent-Type
tampoco se eliminó, aunque puedes revisarlo para asegurarte de que tenga el valor correcto para tu caso de uso.