angularjs resource - invalid label or OPTIONS

My question is similar but not the same as this one.

Here is my fiddle

I'm working with a public resource. I don't think it is jsonp. (the flag they use is pjson which i think, to them , means pretty json). If i have the method as JSONP it will call out and return but then i get an invalid label error. If i have the method set as GET i get the OPTIONS error in firebug (which i typically associate with cross-domain violations).

Oddly, my app calls out to other external resources without issue - so i'm not sure how it is getting that done and can't do this. Am I SOL if i have no control over this outside resource?

 $scope.serviceDesc = layerRes.get();

It looks like you can make JSONP calls to this service you're using by specifying a callback=JSON_CALLBACK in the url parameters when using the $http service, or in your case the $resource service

Have a look at this example that I've written up: http://plnkr.co/edit/7EE85Mr8bZBUroQTp5A9?p=preview

$http.jsonp('http://services.arcgisonline.com/ArcGIS/rest/services/World_Physical_Map/MapServer/0?f=json&callback=JSON_CALLBACK')
  .success(function(data) {
    console.log('The data from their server:');
    console.log(data);
    $scope.worldPhysicalMap = data;
  });

Converting this to use $resource shouldn't be much different.