6

そのため、GeoNames API を使用して国と州/州の情報を取得し、フォームのドロップダウンを選択するために使用しています。このフォームは、その情報を SOAP Web サービスに送信します。SOAP サーバーは、2 文字の形式で国と都道府県のデータのみを認識します。すなわち。カナダの場合は CA、米国の場合は US。GeoNames API は、さまざまな国についてこの情報を提供しますが、その子 (州/県) については提供しません。

GeoNames から州/州/地域の 2 文字の略語を取得する方法を知っている人はいますか、それとも別の API を試すことができますか?

4

3 に答える 3

2

@ user640118 に同意して、北米では州の略語が頻繁に変更されることはありません。コードまたは略語の静的なリストを用意するのが最善です。

あなたの質問に答えるために、単純な REST エンドポイントを介して地理/郵便データを提供するLiveAddressと呼ばれる Web サービスの 1 つに取り組んできました。ただし、部分的または完全なアドレスを受け入れ、完全に入力して検証し、標準化するという意味では、もう少し高度です。重複を削除し、ユーザーのデータをジオコーディングする際に役立つ場合があります。

アドレスがある場合は、このラッパー関数を Javascript で次のように使用できます。

LiveAddress.verify("123 main st 12345", function(results) {
   console.log(results);
});

サンプル出力は、API ドキュメントにあります。

于 2012-07-03T20:36:35.193 に答える
1

GeoNames API には詳しくありませんが、ISO-3166 alpha-2 国コードを取得しているようです: http://www.iso.org/iso/country_codes.htm

その場合、ISO 3166-2:2007 は州と県を定義しています。上記のページでは、データベースやその他の形式で情報を購入する方法について説明しています。

この情報を Web サービスから取得する必要がない限り、ある種の静的ファイルからドロップダウン リストを読み取り、不定期に更新するためのメカニズムを作成する方が簡単だと思います。このタイプのデータはそれほど頻繁に変更されるべきではありません (まあ、少なくとも安定した国では)。

于 2012-07-03T20:25:41.563 に答える
1

Geonames は国を表す 2 文字の略語を提供していますが、一部の国では州のみを表しています。

これは私を超えているので、なぜ彼らは標準的な(そして便利な)ものを提供しないのですか。

于 2014-03-20T21:48:47.460 に答える