5

私の問題は、登録時の国と「都市」の組み合わせに対するユーザーの入力の検証/正規化に関するものです。理想的には、この質問が行われる OkCupid ( http://www.okcupid.com/signup ) 登録ページと同様の機能が必要です。市区町村の入力フィールドへのフォーカスが失われると、何らかの方法で入力が検証されますが、それは驚くほど得意です。私はオーストラリアの田舎の小さな田舎町 (人口 < 6000) とフィンランドのランダムな町を試しましたが、どちらも正確かつ迅速に検証されました。

同じ場所にいるユーザーとの照合を可能にするために、ユーザー生成イベント エンティティの「City」フィールドを正規化したいので、正規化/検証は重要です。

この検証は、アプリケーション ロジックの観点 ('NYC' = 'New York City' = 'New York, New York' = 'New York' の泥沼に対処したくない) とユーザーの観点 (他のユーザーがユーザーの位置を把握している)。

それが違いを生む場合、私はPHPとjQueryを使用していますが、この時点での解決策は何もないよりも有望です!

前もって感謝します!

編集:解決しました!Yahoo は PlaceMaker API を提供しています - 自由形式の位置文字列の解析です! 1 日あたり 50,000 リクエストの制限:

http://developer.yahoo.com/geo/placemaker/

4

3 に答える 3

2

解決しました!Yahoo は PlaceMaker API を提供しています - 自由形式の位置文字列の解析です! 1 日あたり 50,000 リクエストの制限:

http://developer.yahoo.com/geo/placemaker/

于 2010-07-12T21:42:25.593 に答える
1

検証の目的で、次のサイトには、非常に包括的な(そして無料の)国際都市データベースへの参照があります。

http://earth-info.nga.mil/gns/html/

正規化ははるかに難しい問題です。そのためには、おそらくプロプライエタリ製品を利用する必要があります。グーグルマップは1つのオプションかもしれません。

于 2010-07-09T23:36:40.507 に答える
1

都市名を検証する良い方法は、テキストを住所として扱い、ジオコーディングと呼ばれるプロセスで座標に変換することです。ジオコーディングは、特定された各場所の追加データも提供します。これを使用して、要件に準拠していることを確認できます。

Google API はジオコーディングをサポートしており、1 日あたり最大 2,500 リクエストまで無料です。

node-geocodergeocoder-phpなど、既存のライブラリを使用して API を操作できます。ライブラリは、他のジオコーディング プロバイダの長いリストもサポートしています。

于 2016-12-30T07:18:21.933 に答える