No puedo consumir los datos de un servicios externos REST con AngularJS

554 views
Skip to first unread message

Damian Lezcano

unread,
Jun 6, 2013, 8:02:11 PM6/6/13
to ang...@googlegroups.com
Hola antes que nada y gracias!!!! Como les adelante en el asunto no logro consumir datos de un servicio REST JSON con AngularJS. 

Primero les explico como tengo armada la solución y por ultimo describo el problema.

CONTEXTO ACTUAL
===============

Utilizo dos servidores:

JBoss 4.3
Este server lo utilizo para el back-end de la aplicación, en este caso contiene los servicios REST JSON con RestEasy (Java). 
La URL de consulta es la siguiente: "http://localhost:8080/RESTfulExampleJSON/json/product/todos" (observen que escucha en el puerto 8080)

Ejemplo del resultado:

[ { "id" : "0",
    "descripcion" : "Descripcion 0"
  },
  { "id" : "1",
    "descripcion" : "Descripcion 1"
  }
]

LightTPD 1.4.32-1
Este server lo utilizo para front-end de la aplicación, contiene la aplicacion web creada con AngularJS y es la que consume los servicio REST JSON expuesto anteriormente. Para esto me base en el proyecto angular-phonocat (https://github.com/Boychenko/angularjs-seeds/tree/master/angular-phonecat-master).

Este mismo tiene declarado el siguiente servicio, el cual modifique para que en ves de buscar los datos en un archivo, los valla a buscar a una URL del servicio REST creado anteriormente con RestEasy.

Archivo modificado: services.js

'use strict';

/* Services */

angular.module('phonecatServices', ['ngResource']).
    factory('Phone', function($resource){
  return $resource('http://localhost\\:8080/RESTfulExampleJSON/json/product/todos', {}, {
    query: {method:'GET',params: {},isArray:true}
  });
});

** (isArray lo probe tanto en true como en false) **
** (json/product/todos me devuelve la lista completa de todos los productos, por lo que no necesita ningun parametro) **

El PROBLEMA
============

Analizando la consulta con el "Inspector de Elementos" del Chrome encuentro que:

  1. OPTIONS http://localhost:8080/RESTfulExampleJSON/json/product/todos Origin http://localhost:8180 is not allowed by Access-Control-Allow-Origin. angular.js:9253
XMLHttpRequest cannot load http://localhost:8080/RESTfulExampleJSON/json/product/todos. Origin http://localhost:8180 is not allowed by Access-Control-Allow-Origin. localhost/:1

Probé también con otras url como "http://ip.jsontest.com/?callback=showMyIP" y me arroja el mismo mensaje de error.

Desde ya si alguien me puede orientar le seré muy agradecido.. Gracias a todos nuevamente y espero buenas noticias!!!
Message has been deleted

Ron G.

unread,
Jun 6, 2013, 11:34:33 PM6/6/13
to ang...@googlegroups.com
If I'm not mistaken, it's complaining about the fact you are doing cross domain because one URL uses port 8080 and the other uses 8180. 

Ron

Damian Lezcano

unread,
Jun 7, 2013, 7:52:40 AM6/7/13
to ang...@googlegroups.com
gracias Ron, yo pensé lo mismo por eso probé con otra URL ("http://ip.jsontest.com/?callback=showMyIP") y me paso lo mismo!!


On Fri, Jun 7, 2013 at 12:34 AM, Ron G. <grime...@gmail.com> wrote:
If I'm not mistaken, it's complaining about the fact you are doing cross domain because one URL uses port 8080 and the other uses 8180. 

Ron

--
You received this message because you are subscribed to a topic in the Google Groups "AngularJS" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/angular/oKy3UEbL5kU/unsubscribe?hl=en-US.
To unsubscribe from this group and all its topics, send an email to angular+u...@googlegroups.com.
To post to this group, send email to ang...@googlegroups.com.
Visit this group at http://groups.google.com/group/angular?hl=en-US.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Reply all
Reply to author
Forward
0 new messages