資料分享 — 省市區街道社群 5 級聯動資料 ---- 送演示 ---- 送服務端程式

qufo發表於2018-04-05

很多專案都需要省市區的資料表,有些甚至要到縣、鎮、街道、社群之類的更細的資料(比如 O2O 服務)。因此自己弄了一份省市地街道社群的5級聯動,放在表裡。
一般省級是直接載入的,改動省級,向伺服器查詢市級,此時查一次資料庫,選中市,查一次資料庫確定區。
後來查得煩了,乾脆把查到的資料做個快取,直接存成 json 檔案拉倒。 nginx 直接返回檔案,前端直接載入。這下不經過 PHPMysql ,快了很多。而且可以做 CDN 。這種方式是典型的空間換時間,現在硬碟已經很便宜了。
於是在 github 上開了個專案。
想著還要個 nginx 來起服務,算了,乾脆自己用 Golang 擼一個。
說幹就幹

package main
import (
    "net/http"
    "github.com/qufo/IniReader"
)

func main() {
    config := IniReader.NewIniReader("./config.ini")
    http.Handle("/", http.FileServer(http.Dir(config.Get("directory"))))
    http.ListenAndServe(":"+config.Get("port"), nil)
}

寫完了。
即然都寫了,加個 readme 吧。
然後放 github 上了。
裡面的 ID (code) 為短格式,比如省級只有2位,市級只有4位,需要更長的話,自己在後面補0即可。
有需要就去下吧。
地址在 https://github.com/qufo/cities

相關文章