Not sure if it's a valid json, but at this point I dont really care. All I 
want is a working code.

On Friday, September 5, 2014 3:07:45 PM UTC-5, Eric Eslinger wrote:
>
> I'd take the actual file and shove it through a json linter if I were you, 
> or look more closely at the object actually getting returned by the XHR 
> request (you can see the response in devtools).
>
>
> On Fri, Sep 5, 2014 at 1:03 PM, mark goldin <[email protected] 
> <javascript:>> wrote:
>
>> BAsically, it's something like this:
>> { "name": "Hartsfield Jackson Atlanta International Airport", "code": 
>> "ATL", "city": "Atlanta", "state": "GA", "lat": 33.64, "lon": -84.444, 
>> "pop2011": 432427, "vol2011": 44414121, "vol2010": 43130585, "vol2009": 
>> 42280868, "vol2008": 43236665, "vol2007": 43236665, "vol2006": 41352038, 
>> "vol2005": 42402653 }
>>
>> On Friday, September 5, 2014 3:01:33 PM UTC-5, Thomas Murphy wrote:
>>>
>>> Show us the contents of the data file please. Looks like a JSON parse 
>>> error.
>>>
>>>
>>> On Fri, Sep 5, 2014 at 3:54 PM, mark goldin <[email protected]> wrote:
>>>
>>>> Controller:
>>>> $http.get(url).then(function (data) { console.log('1234'); 
>>>> }).catch(function (err) { console.log('5678') });
>>>>
>>>> Tools Console:
>>>> SyntaxError: Unexpected token ,
>>>>     at Object.parse (native)
>>>>     at fromJson (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/
>>>> angular.js:1033:14)
>>>>     at $HttpProvider.defaults.defaults.transformResponse (
>>>> http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.js:6749:18
>>>> )
>>>>     at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/
>>>> angular.js:6724:12
>>>>     at Array.forEach (native)
>>>>     at forEach (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/
>>>> angular.js:300:11)
>>>>     at transformData (http://ajax.googleapis.com/
>>>> ajax/libs/angularjs/1.2.0/angular.js:6723:3)
>>>>     at transformResponse (http://ajax.googleapis.com/
>>>> ajax/libs/angularjs/1.2.0/angular.js:7387:17)
>>>>     at wrappedCallback (http://ajax.googleapis.com/
>>>> ajax/libs/angularjs/1.2.0/angular.js:10549:81)
>>>>     at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/
>>>> angular.js:10635:26 angular.js:9037
>>>> 5678
>>>>
>>>> On Friday, September 5, 2014 2:41:32 PM UTC-5, Eric Eslinger wrote:
>>>>>
>>>>> In your controller, just call 
>>>>> $http.get(url).then(function(data){$scope.myData 
>>>>> = data.data}).catch(function(err){console.log(err)});
>>>>>
>>>>> In simple cases, I prefer just calling $http.get directly. In more 
>>>>> complicated cases, it makes sense to put that behind an abstraction layer 
>>>>> (if you're cache-ing calls, or you do a lot of hits on the same URL and 
>>>>> want to use singletons to keep control of which url gets hit, etc etc). 
>>>>> But 
>>>>> that's just IMO. The important point (that a lot of people seem to miss 
>>>>> in 
>>>>> the documentation) is that the .success and .error callbacks on $http are 
>>>>> not needed - the return values from $http calls are all promises which 
>>>>> conform to the standard spec, so you can just .then chain from there.
>>>>>
>>>>> e
>>>>>
>>>>>
>>>>> On Fri, Sep 5, 2014 at 12:23 PM, mark goldin <[email protected]> 
>>>>> wrote:
>>>>>
>>>>>> <return $http.get().then(function(data){return 
>>>>>> massageData(data)}).catch(function(err){at least you have some error 
>>>>>> handling})
>>>>>> How do I consume that in my Controller if there is no function 
>>>>>> (getData()) anymore?
>>>>>>
>>>>>>
>>>>>> On Friday, September 5, 2014 2:14:22 PM UTC-5, mark goldin wrote:
>>>>>>>
>>>>>>> Jumped to conclusion too quickly. The file is in black now, but the 
>>>>>>> error is still there. 
>>>>>>>
>>>>>>> On Friday, September 5, 2014 2:06:34 PM UTC-5, mark goldin wrote:
>>>>>>>>
>>>>>>>> That was it! Added it to my web.config and no more errors.
>>>>>>>> Thanks for the help.
>>>>>>>>
>>>>>>>> On Friday, September 5, 2014 1:54:39 PM UTC-5, Thomas Murphy wrote:
>>>>>>>>>
>>>>>>>>> I'd be willing to put a bit of money on it throwing a CORS if 
>>>>>>>>> you're not running your angular app against a server.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Sep 5, 2014 at 2:50 PM, Eric Eslinger <[email protected]
>>>>>>>>> > wrote:
>>>>>>>>>
>>>>>>>>>> If the chrome dev tools are showing a red status, then the error 
>>>>>>>>>> isn't in your promise handling, it's in the actual fetching of the 
>>>>>>>>>> file - 
>>>>>>>>>> that file isn't being properly served by your backend, or isn't 
>>>>>>>>>> being 
>>>>>>>>>> served the way you think it is (you may need to set cookies or a 
>>>>>>>>>> token to 
>>>>>>>>>> access it, etc - it depends on your server setup).
>>>>>>>>>>
>>>>>>>>>> e
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Fri, Sep 5, 2014 at 11:48 AM, mark goldin <[email protected]> 
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Tools will show the same info even if I try to access non 
>>>>>>>>>>> existent file.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Friday, September 5, 2014 1:43:35 PM UTC-5, mark goldin wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> The url is correct, I am not fully showing it.
>>>>>>>>>>>> In the Tools the file is in Red.Status text Canceled. Can't see 
>>>>>>>>>>>> any more info about failure.
>>>>>>>>>>>>
>>>>>>>>>>>> On Friday, September 5, 2014 1:34:28 PM UTC-5, Eric Eslinger 
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> You can just treat $http.get() as a promise. You don't have to 
>>>>>>>>>>>>> directly instantiate a second promise unless you're doing 
>>>>>>>>>>>>> something funky.
>>>>>>>>>>>>>
>>>>>>>>>>>>> return $http.get().then(function(data){return 
>>>>>>>>>>>>> massageData(data)}).catch(function(err){at least you have 
>>>>>>>>>>>>> some error handling})
>>>>>>>>>>>>>
>>>>>>>>>>>>> Also, if you're getting an error, what's the failed? At the 
>>>>>>>>>>>>> very least, I'm 99.9% sure that http://localhost:/localfile.txt 
>>>>>>>>>>>>> is an incorrect url. Don't you have to put a port after a : in a 
>>>>>>>>>>>>> host 
>>>>>>>>>>>>> definition? so either localhost/localfile or 
>>>>>>>>>>>>> localhost:3000/localfile. So 
>>>>>>>>>>>>> it could be that your $http.get is just failing. You can get more 
>>>>>>>>>>>>> information on this in the chrome debug tools - look at your 
>>>>>>>>>>>>> network 
>>>>>>>>>>>>> requests, and it should show the localfile.txt XHR, and either be 
>>>>>>>>>>>>> black 
>>>>>>>>>>>>> (success!) or red (fails!) and have more information there.
>>>>>>>>>>>>>
>>>>>>>>>>>>> e
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Sep 5, 2014 at 10:54 AM, mark goldin <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Actually I am rather getting alert that says Error.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Friday, September 5, 2014 12:52:33 PM UTC-5, mark goldin 
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Ok, I have changed my code. Here it is:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Service
>>>>>>>>>>>>>>> angular.module('myModule').factory("service", function 
>>>>>>>>>>>>>>> ($http, $q) {
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>     var requestUri = 'http://localhost:/localfile.txt';
>>>>>>>>>>>>>>>     return {
>>>>>>>>>>>>>>>         getData : function(){
>>>>>>>>>>>>>>>             var deferred = $q.defer();
>>>>>>>>>>>>>>>             var response = $http.get(requestUri);
>>>>>>>>>>>>>>>             response.success(function (data) {
>>>>>>>>>>>>>>>                 deferred.resolve(data);
>>>>>>>>>>>>>>>             });
>>>>>>>>>>>>>>>             response.error(function (data) {
>>>>>>>>>>>>>>>                 alert('Error');
>>>>>>>>>>>>>>>             });
>>>>>>>>>>>>>>>             // Return the promise to the controller
>>>>>>>>>>>>>>>             return deferred.promise;
>>>>>>>>>>>>>>>         }
>>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>> });
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Controller:
>>>>>>>>>>>>>>> var promise = service.getData();
>>>>>>>>>>>>>>>     $scope.data = promise.then(function (data) {
>>>>>>>>>>>>>>>         alert('Success: ' + data);
>>>>>>>>>>>>>>>     }, function (reason) {
>>>>>>>>>>>>>>>         alert('Failed: ' + reason);
>>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>>     );
>>>>>>>>>>>>>>> When I run it I get the alert that says Failed ...
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> BTW, if I change my service to this:
>>>>>>>>>>>>>>> getData : function(){
>>>>>>>>>>>>>>>             var deferred = $q.defer();
>>>>>>>>>>>>>>>             deferred.resolve('1234');
>>>>>>>>>>>>>>>             return deferred.promise;
>>>>>>>>>>>>>>>         }
>>>>>>>>>>>>>>> Then I get Success
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Friday, September 5, 2014 11:32:42 AM UTC-5, Thomas 
>>>>>>>>>>>>>>> Murphy wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Great, so let's focus on what's happening in the 
>>>>>>>>>>>>>>>> controller. As Sander said, you're returning a promise from 
>>>>>>>>>>>>>>>> you service. *That 
>>>>>>>>>>>>>>>> promise needs to be resolved. *Check out the documentation 
>>>>>>>>>>>>>>>> here on the syntax, and see if it doesn't provide you the data 
>>>>>>>>>>>>>>>> you're 
>>>>>>>>>>>>>>>> expecting. https://docs.angularjs.org/api/ng/service/$q
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Feel free to paste in a bit more of your controller code 
>>>>>>>>>>>>>>>> too.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Fri, Sep 5, 2014 at 12:28 PM, mark goldin <
>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> 1. serviceName.getData();
>>>>>>>>>>>>>>>>> 2. The url points to a text file on the local web server. 
>>>>>>>>>>>>>>>>> Navigating from Browser to the file opens it with no problem.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Friday, September 5, 2014 9:58:27 AM UTC-5, Thomas 
>>>>>>>>>>>>>>>>> Murphy wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> 1. What are you doing in the controller once you call 
>>>>>>>>>>>>>>>>>> serviceName.getData()?
>>>>>>>>>>>>>>>>>> 2. What url are you calling in $http.get? If you're not 
>>>>>>>>>>>>>>>>>> calling anything, you'll get no data.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Best,
>>>>>>>>>>>>>>>>>> Thomas
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Fri, Sep 5, 2014 at 10:49 AM, mark goldin <
>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> I also found this code:
>>>>>>>>>>>>>>>>>>>  function ($http, $q) {
>>>>>>>>>>>>>>>>>>>   return {
>>>>>>>>>>>>>>>>>>>         getData : function(){
>>>>>>>>>>>>>>>>>>>             var deferred = $q.defer();
>>>>>>>>>>>>>>>>>>>             var promise = $http.get(url).success(function 
>>>>>>>>>>>>>>>>>>> (response) {
>>>>>>>>>>>>>>>>>>>                 deferred.resolve(response);
>>>>>>>>>>>>>>>>>>>             });
>>>>>>>>>>>>>>>>>>>             // Return the promise to the controller
>>>>>>>>>>>>>>>>>>>             return deferred.promise;
>>>>>>>>>>>>>>>>>>>         }
>>>>>>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> and in controller to get data: serviceName.getData();
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> but I get no data. Can you please explain why is not 
>>>>>>>>>>>>>>>>>>> working?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On Friday, September 5, 2014 9:39:49 AM UTC-5, mark 
>>>>>>>>>>>>>>>>>>> goldin wrote:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Ok, I see how it works.
>>>>>>>>>>>>>>>>>>>> Another question. Is it possible to have just one 
>>>>>>>>>>>>>>>>>>>> function *MyTestService *and run it like this?
>>>>>>>>>>>>>>>>>>>> <div ng-controller='*MyTestService *as vm'>
>>>>>>>>>>>>>>>>>>>>        <p>the result from the service load:</p>
>>>>>>>>>>>>>>>>>>>>        <pre>{{vm.data|json}}</pre>
>>>>>>>>>>>>>>>>>>>>     </div>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On Friday, September 5, 2014 9:28:42 AM UTC-5, mark 
>>>>>>>>>>>>>>>>>>>> goldin wrote:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> What vm.data shown in index.html would come from if I 
>>>>>>>>>>>>>>>>>>>>> remove the TestMyService function?
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> On Friday, September 5, 2014 1:32:11 AM UTC-5, Sander 
>>>>>>>>>>>>>>>>>>>>> Elias wrote:
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Hi Mark,
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> You mean something like this: http://plnkr.co/edit/
>>>>>>>>>>>>>>>>>>>>>> 5cENSfOAhKJDI0iwe6ZV?p=preview
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>>>>>>>>> Sander
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>  -- 
>>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to 
>>>>>>>>>>>>>>>>>>> the Google Groups "AngularJS" group.
>>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails 
>>>>>>>>>>>>>>>>>>> from it, send an email to [email protected].
>>>>>>>>>>>>>>>>>>> To post to this group, send email to 
>>>>>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>>>>>> Visit this group at http://groups.google.com/group
>>>>>>>>>>>>>>>>>>> /angular.
>>>>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/op
>>>>>>>>>>>>>>>>>>> tout.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>  -- 
>>>>>>>>>>>>>>>>> You received this message because you are subscribed to 
>>>>>>>>>>>>>>>>> the Google Groups "AngularJS" group.
>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails 
>>>>>>>>>>>>>>>>> from it, send an email to [email protected].
>>>>>>>>>>>>>>>>> To post to this group, send email to 
>>>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>>>> Visit this group at http://groups.google.com/group/angular
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>  -- 
>>>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>>>> Google Groups "AngularJS" group.
>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>>>>> it, send an email to [email protected].
>>>>>>>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>>>>>>>> Visit this group at http://groups.google.com/group/angular.
>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  -- 
>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>> Google Groups "AngularJS" group.
>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>> it, send an email to [email protected].
>>>>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>>>>> Visit this group at http://groups.google.com/group/angular.
>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  -- 
>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>> Google Groups "AngularJS" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>>> send an email to [email protected].
>>>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>>>> Visit this group at http://groups.google.com/group/angular.
>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "AngularJS" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to [email protected].
>>>>>> To post to this group, send email to [email protected].
>>>>>> Visit this group at http://groups.google.com/group/angular.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>  -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "AngularJS" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at http://groups.google.com/group/angular.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "AngularJS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at http://groups.google.com/group/angular.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to