entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Como se realiza una acción post usando el Add-ons sdk de Firefox

Estoy haciendo una extensión para Firefox y estoy usando el SDK de complementos que ofrece Mozilla.

En la extensión tengo que realizar una llamada asíncrona a un servidor a través de una solicitud POST donde especifico una serie de parámetros.

Para realizar la llamada asíncrono uso el objeto Request y a través de la propiedad content especifico los parámetros pero no me funciona la llamada. Supuestamente, la respuesta debe ser un JSON pero siempre devuelve null.

¿Alguien se ha enfrentado a este problema antes y me puede orientar un poco?

Esta el código de la llamada:

Request({
  url: host + '/taf',
  content: {
        "UUID" : uuid,
        "TAF": taf,
  },
  contentType: "application/json", 
  onComplete: function (response) {
    console.dir(response.json);
  }
}).post();

1 Respuesta

1voto

juansolo Puntos1840

Bueno, menuda metida de pata. El código esta bien, el problema esta en el formato de los parámetros que no es el adecuado.

Como no puedo borrarlo, la doy por solucionada.

0voto

Leonardo-Tadei comentado

Hola @juansolo,

sería ideal si podés compartir ek formato de los parámetros correctos y cómo es la llamada, así junto con la duda queda la solución para futuros visitantes.

Gracias!

0voto

juansolo comentado

Tenía que realizar una pequeña y muy simple extensión para Firefox. Mozilla te permite desarrollar la extensión usando tanto C++ como HTML+Javascript. Como la extensión era muy simple, no valía la pena realizar el esfuerzo de desarrollarla en C++, así que opte por HTML+Javascript.

Mozilla, para simplificar y facilitar el desarrollo, ofrece la herramienta SDK de complementos que te proporciona herramientas y una API para que cómodamente puedas realizar tu tarea. La aplicación la escribes en Javascript usando dicha API y la representación gráfica en HTML con su Javascript asociado. De este modo, podemos distinguir dos tipos de scripts:

  • Add-on script: contiene la lógica de la aplicación.
  • Content script: contiene el código javascript asociado al HTML.

Como puedes usar Javascript, en el lado del Content script puedes usar frameworks como JQuery así como cualquier otro framework de CSS. El problema es que por defecto no permite realizar llamadas AJAX desde los scripts asociados al HTML. Para ello tienes que especificar el permiso cross-domain-content pero se recomienda usar el objeto Request para realizar las llamadas AJAX y utilizar el objeto Port para pasar la información de un lado al otro(del Add-on script al Content script y viceversa).

Mi problema era dos:

  • En el servidor esperaba que uno de los parámetros fuera un array.
  • y en la cabecera de la respuesta no se había especificado el content-type.

El fragmento de código de la llamada era correcto.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta