質問

Google Places APIを使用して、自分の場所の周りに場所を取得しようとしています。

Places検索のURLを押すためのコードは次のとおりです。

NSString *URL = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&sensor=true&key=0dp-j3dkCU_YUb97RHcbL5shmRrJ5R2y4bYz1Vw"];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL:[NSURL URLWithString:URL]
                                                           cachePolicy: NSURLRequestReloadIgnoringLocalCacheData
                                                       timeoutInterval: 4];
[request setValue:@"application/json" forHTTPHeaderField:@"accept"];
NSObject *id1 = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];

これにより、JSON形式で次の回答が得られます。

{
  "html_attributions" : [],
  "results" : [],
  "status" : "REQUEST_DENIED"
}

Google Places APIを検索すると、間違っていると言います センサー パラメーター値は、「request_denied」の一般的な原因です。しかし、私の場合、私もそれを正しいと提供しています。

どこで間違っているのか考えてみませんか?

繰り返しになりますが、私が使用しているApikeyは、アプリがAndroid、iPhone、BlackBerryで開発するのが一般的です。それは有効ですか?または、別のApikey(iPhoneアプリに固有)が必要ですか?だから、別の質問は、 3つのプラットフォームすべてで同じキーを使用できますか?

役に立ちましたか?

解決

私はあなたのURLを取り、私が知っていることを知っているキーを置き換え、期待される結果を得ました。一見、キーを誤ってコピー/貼り付けた/貼り付けたか、このキーがAPIコンソールで関連付けられているプロジェクトのAPIを有効にしていないことを推測しています。

各プロジェクトに異なるサービスを有効にすることができることに注意することが重要です - そして、それを使用したい各プロジェクトのAPIを手動で有効にする必要があります - コンソールで有効になり、キーが正確にコピーされていることを確認できますか?

他のヒント

このエラーメッセージは、必要なパラメーターが欠落している場合にも表示されます。

たとえば、私はちょうど同様の問題を抱えていました /autocomplete 場所APIのエンドポイント。

にリクエストを送信します https://maps.googleapis.com/maps/api/place/autocomplete/json?key=XXXXXXXXXXXXXXXXXX&input=San, 、私はこのような応答を得ていました:

{
   "predictions" : [],
   "status" : "REQUEST_DENIED"
}

それは許可の問題のように見えますが(少なくとも私にとっては)、私は単に必要なものを逃していたことがわかりました sensor パラメーター。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top