1
のAjaxを使用してGoogle Time Zone APIへとthis tutorialに従うことによって、APIキーのアクセスを制限することはできません:私は私の生成に重要なパラメータを交換しましたは私が要求を作ってるんだ
var apicall = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510×tamp=1331161200&key=YOUR_API_KEY'
var xhr = new XMLHttpRequest() // create new XMLHttpRequest2 object
xhr.open('GET', apicall) // open GET request
xhr.onload = function(){
if (xhr.status === 200){ // if Ajax request successful
var output = JSON.parse(xhr.responseText) // convert returned JSON string to JSON object
console.log(output.status) // log API return status for debugging purposes
if (output.status == 'OK'){ // if API reports everything was returned successfully
// do something
}
}
else{
alert('Request failed. Returned status of ' + xhr.status)
}
}
xhr.send() // send request
Google ConsoleのAPIキーを押すと、リクエストが機能します。問題は、GoogleコンソールのReferrerまたはServer IPのAPIキーアクセスを制限するように見えないことです。サーバーまたはIPのドメインを指定すると機能しません。私の推測では、AjaxはリファラーやサーバのIP情報をGoogleに送信して、リクエストが正当なものかどうか判断しません。現時点では、私はの APIキーの制限を使用して立ち往生していますが、これはもちろん良い考えではありません。
AJAX経由でGoogle APIを呼び出す際に、誰かがGoogle APIのキーアクセスを制限した経験がありますか?