> For the complete documentation index, see [llms.txt](https://doc.velneo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.velneo.com/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md).

# VResponse

VResponse es un objeto javascript que representa una respuesta para una petición realizada a través de web a Velneo vModApache.

theResponse se crea automáticamente para cada petición realizada, y permite acceder a la respuesta para definirla.

Con ayuda de la clase [VRequest](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vrequest.md), podremos obtener la información de la petición.

De esta forma podemos gestionar de forma dinámica las peticiones web en un servidor Apache con Velneo vModApache.

## Funciones

**De cabecera**

| Retorno | Función                                                                                                                        |
| ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| String  | [header](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#header)( String szHeader )                       |
| Array   | [headerKeys](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#headerkeys)()                                |
| void    | [setHeader](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#setheader)( String szHeader, String szValue ) |

**De contenido**

| Retorno | Función                                                                                                                       |
| ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| String  | [contentType](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#contenttype)()                             |
| void    | [setContentType](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#setcontenttype)( String szContentType ) |

**De cuerpo**

| Retorno | Función                                                                                                          |
| ------- | ---------------------------------------------------------------------------------------------------------------- |
| String  | [body](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#body)()                              |
| void    | [setBody](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#setbody)( String szBody )         |
| void    | [setRawBody](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#setrawbody)( VByteArray body ) |

**De estado**

| Retorno | Función                                                                                                       |
| ------- | ------------------------------------------------------------------------------------------------------------- |
| void    | [setStatus](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#setstatus)( Number nStatus ) |
| Number  | [status](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vresponse.md#status)()                       |

## Documentación de funciones

### Funciones de cabecera

#### String header( String szHeader ) <a href="#header" id="header"></a>

Devuelve el valor de una cabecera cuyo nombre indicamos como parámetro.

Parámetros:

* szHeader: Cadena con el nombre de la cabecera.

#### Array headerKeys() <a href="#headerkeys" id="headerkeys"></a>

Devuelve un array de cadenas con el nombre de las cabeceras obtenidas de la respuesta.

#### void setHeader( String szHeader, String szValue ) <a href="#setheader" id="setheader"></a>

Establece un valor para la cabecera que indicamos como parámemtro.

Parámetros:

* szHeader: Cadena con el nombre de la cabecera cuyo valor vamos a establecer.
* szValor: Cadena con el valor para la cabecera.

### Funciones de contenido

#### String contentType() <a href="#contenttype" id="contenttype"></a>

Devuelve tipo de contenido de la respuesta.

#### void setContentType( String szContentType ) <a href="#setcontenttype" id="setcontenttype"></a>

Establece para la respuesta el tipo de contenido que indicamos como parámetro.

Parámetros:

* szContentType: Cadena con el tipo de parámetro que definimos para la respuesta.

### Funciones de cuerpo

#### String body() <a href="#body" id="body"></a>

Devuelve el contenido del cuerpo de la respuesta.

#### void setBody( String szBody ) <a href="#setbody" id="setbody"></a>

Establece el cuerpo de la respuesta con la cadena que indicamos como parámetro.

Parámetros:

* szBody: Cadena para definir el contenido del cuerpo de la respuesta.

#### void setRawBody( VByteArray body ) <a href="#setrawbody" id="setrawbody"></a>

Establece el cuerpo de la respuesta con contenido del objeto de la clase [VByteArray](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vbytearray.md) que indicamos como parámetro.

Parámetros:

* body: Objeto de la clase [VByteArray](/21/velneo-vdevelop/scripts/lenguajes/javascript/clases/vbytearray.md) que incluye el binario que queremos establecer como cuerpo del envío.

### Funciones de estado

#### void setStatus( Number nStatus ) <a href="#setstatus" id="setstatus"></a>

Establece el estado de la respuesta con el valor que indicamos como parámetro.

Parámetros:

* nStatus: Entero que define el estado de la respuesta.

#### Number status() <a href="#status" id="status"></a>

Devuelve el valor del estado de la respuesta.

## Ejemplos

### Ejemplo de manejo de binarios

```javascript
// Creamos el objeto de la clase VByteArray para recibir el cuerpo binario
var baBody= new VByteArray;

// Obtenemos el cuerpo binario
baBody = theRequest.rawBody();

// Procesamos lo obtenido
var length = baBody.length;
var firstChar = baBody[0];
```
