Neu zu eckig, versucht, eine sehr einfache Anwendung mit der Google Maps/Places API einzurichten.
Ich kann erfolgreich den Geolocation-Dienst mit verwenden:
.controller('MainCtrl', [
'$scope',
'$http',
function($scope, $http){
$scope.userLocation = [];
$scope.currentLocation = function() {
$http({
method: 'GET',
url: 'https://www.googleapis.com/geolocation/v1/geolocate?key=xxx'
}).then(function successCallback(response) {
$scope.userLocation.push(response);
});
}
}])
Problem: Wenn ich eine ähnliche GET-Anforderung an ihre Places API versuchen - ich CORS Fehler erhalten:
XMLHttpRequest cannot load https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=36.23…5.1458888&type=bar&key=xxx. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://0.0.0.0:3000' is therefore not allowed access.
Frage: Bin ich in der Lage, diese Art von Anfragen von Angular zu machen oder muss ich die Backen einrichten d, um diesen Anruf stattdessen zu machen?
Ich habe versucht, mit JSONP als Methode, die das CORS-Problem bestanden, aber dann habe ich das Problem nicht auf die Daten zugreifen. Nicht sicher, ob es ungültig JSON ... aber es sagt Unexpected identifier :
, und wenn ich den Quelltext es wie völlig in Ordnung, Daten zu mir aussieht:
{
"html_attributions" : [],
"results" : [
{
"geometry" : {
"location" : {
"lat" : 36.2388477,
"lng" : -115.1540073
},
},
"icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png",
"id" : "578bfba1f17b0c5fbdafd5b71600b50d3e95c1ca",
"name" : "Ruby Tuesday",
"opening_hours" : {
"open_now" : true,
"weekday_text" : []
},