2012-05-01 56 views
1

我有一個Flex應用程序,需要能夠相當快地驗證數百個郵政編碼。我也想保持應用程序使用的內存空間儘可能小。最有效的方式來驗證我們在Flex中的郵政編碼

以下是我的團隊提出的一些解決方案。對他們有什麼想法?任何其他想法?

通過檢查每個郵政編碼......

  1. 陣列的有效郵政編碼
  2. 陣列中的無效郵政編碼
  3. SOAP調用,用於驗證郵政編碼
  4. 查詢數據庫的Web服務表
  5. 一棵樹 - 高5個節點,底部的節點將布爾值是否有效的布爾值。 12345的郵政編碼將從根到它的第一個孩子,第二個......你得到點
  6. 通過有效USPS SCF數組驗證前3個數字,然後通過特定於該SCF的數組驗證最後兩位數。
+0

如果內存使用率是主要問題;那麼我不會將所有的郵政編碼加載到內存中並以這種方式存儲它們。我會ping一個遠程服務,它將返回用戶界面的每個郵政編碼問題,以及它是否驗證成功。如果速度是您主要關心的問題,請加載內存中的所有郵政編碼並循環以驗證。儘管如此;我投票結束,因爲這不是一個可以具體回答的問題。 – JeffryHouser

回答

2

取決於你在找什麼。您是否要驗證郵政編碼的格式(即它是5位數字)還是要確保郵政編碼是有效的美國郵政編碼?我會猜測它是後者。查看USPS地址API(https://www.usps.com/business/webtools-address-information.htm?)。我敢打賭,在管理數據庫或更新數組並管理所有xxxxx + 4郵政編碼時,這將是完美的,並且花費更少。

+0

我們已經驗證了長度。我們需要確保它是一個有效的美國郵政編碼。 – liz

+1

然後使用上面提供的USPS API將會給你最一致和最新的信息。 – Dom