Google Places API からの写真を使って取り組んでいるこのプロジェクトで、パブリック アート用に持っている写真のコレクションを増やそうとしています。ここには、詳細リクエストを送信して 10 枚の写真の配列を取得できると書かれています。最終的には、応答をアンパックして各写真の Google の写真参照を取得し、配列内の各写真を要求して表示します。
残念ながら、詳細リクエストを送信すると、この計画は破綻します。これは私が得ている正確なエラーです:
Fetch API cannot load https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJ5zf5lfXKRIYR8rPafbwaL68&key=MY_API_KEY.
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:4040' is therefore not allowed access.
If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
これをローカルホストから実行していますが、それが重要であると確信しています。私の他のすべての API 呼び出し (Google Maps API と他のいくつか) は、これとまったく同じように記述されているため、なぜエラーが発生するのか少し混乱しています。関連するコードは次のとおりです。
The actual API call:
export function getPhotos(placeID) {
let obj = {
method: 'GET'
};
return fetch('https://maps.googleapis.com/maps/api/place/details/json?placeid=' + placeID + '&key=MY_API_KEY')
.then((response) => {
if (response.status >= 400){
throw new Error("Error getting photos for placeID: " + placeID)
}
return response.json()
})
}
他に情報が必要な場合はお知らせください。喜んで提供させていただきます。ありがとう!