新型冠狀病毒籠罩下的新年,讓每一箇中國人都感到恐慌和揪心。咱們天天爲前線的白衣天使和平民英雄們的事蹟感動而落淚,也爲不法分子哄擡物價,無良我的以權謀私等自私自利的行爲而感到痛心疾首。做爲普通人,咱們最大的貢獻就是宅在家裏,響應鐘南山院士的號召,作好我的防禦,不爲疫情添負擔,不爲他人添麻煩。最近看到不少大佬都爲「戰疫」貢獻了本身的技術力量,有的人提供了數據和接口支持,有的人作了app
,有的人作了webapp
。看到這些舉動,我也躍躍欲試,靜下心去作,總會作點東西出來,因而我作了一版微信小程序,主要是想方便本身和家人朋友們查詢下最新的數據,畢竟你們都用微信。前端
微信小程序的版本審覈實在太慢了,昨天提交版本審覈的,如今還沒經過,唉,心累。
首先要感謝丁香園,數據源於丁香園-丁香醫生。node
重點要感謝掘金@普通程序員提供的數據接口能力,讓咱們菜雞也有機會作一點微小的工做。nginx
爲了防止給大佬的服務器增長訪問壓力,我每15分鐘抓取一次接口數據,存儲於我的服務器上,供本身和他人訪問和使用。git
Q: 爲何別人有提供接口,你還要再畫蛇添足?A:我要作小程序,沒有https搞不了。
目前主要上線瞭如下接口:程序員
在線接口基地址: https://wuhan.wbjiang.cn/api/
github
接口名 | 請求方式 | 接口描述 |
---|---|---|
timeline | GET | 獲取發生的事件,支持分頁參數pageNo和pageSize |
stats | GET | 總體統計數據 |
rumour | GET | 最新闢謠 |
protect_wiki | GET | 最新防禦知識 |
wiki | GET | 最新知識百科 |
help_links | GET | 便民信息/診療信息 |
province_stats | GET | 全國省份級患者分佈數據 |
city_stats/:areaName | GET | 根據省份查市縣疫情數據,areaName傳入省級行政區的簡寫,如「湖南」 |
oversea_stats | GET | 全球海外其餘地區患者分佈數據 |
能夠點擊在線訪問總體統計數據試試看呢!web
https://wuhan.wbjiang.cn/api/stats
該服務的源碼我也上傳到了github
,歡迎訪問wuhan_best_wishes查看,若是能順手給個star
那是極好的,感謝感謝!express
因爲微信小程序須要調用https
協議的接口,因此我利用nginx
的能力和阿里雲提供的SSL
證書,對上述接口提供了https
支持。小程序
接口服務:使用的是nodejs
語言,技術框架是express
。微信小程序
應用管理:利用pm2
來管理node
應用。
代理服務器:利用Nginx
監聽80
端口,轉發到node
服務所在的內部端口。
取名挺煩的,擬的名字要麼是被行業限制,要麼已經有人用了。最後就隨便取了個名wuhan速報。
技術方面,我暫時沒有使用框架,用的是小程序原生的開發語言。爲了快速出初版效果,UI
部分用到了我熟悉的vant-weapp
。
相關代碼已開源,請訪問ncov-weapp查看源碼。
先發個小程序碼,方便你們直接訪問小程序(暫時還沒經過審覈,微信小程序審覈速度你懂的,若是想體驗一下的話,歡迎加我微信ice_lloly使用體驗版)。
內容上,主要作了四個頁面,分爲疫情地圖,闢謠與防禦,事件播報,疾病知識等幾塊。
疫情統計數據
疫情地圖與趨勢
國內省市疫情分佈
海外疫情分佈
闢謠與防禦
最新事件實時播報
疾病知識
爲了快速出效果,作的時候有參考丁香園的設計,感謝丁香園技術和設計團隊!
因爲時間有限,大概花了一天多的時間吧,因此作出來的效果是比較粗糙的。接下來我會在有餘力的狀況下,繼續迭代更新,畢竟仍是要遠程辦公的,大部分時間仍是要聚焦於公司業務。
我是 Tusi,一個創業公司前端小leader,天天依然爲寫不完的業務代碼煩惱,在打磨產品道路上沉澱技術,探索成長路線。若是你與我同樣,正在思考本身的技術成長與價值,歡迎加我微信交流探討,微信號 ice_lloly。我會在公衆號 猿出道和小程序 Tusi博客同步博客內容,快來撩我!