天河微信小程序入門《三》:打通任督二脈,先後臺互通

天河君在申請到https證書後就第一時間去部署後臺環境,可是發現每次訪問https都要帶上8443端口實在是很坑爹啊,做爲一個強迫症晚期,我要作的天然是不帶端口直接訪問。
打開你tomcat下的conf文件夾,編輯裏面的server.xmlphp

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

    <!-- Define a SSL HTTP/1.1 Connector on port 8443
         This connector uses the BIO implementation that requires the JSSE
         style configuration. When using the APR/native implementation, the
         OpenSSL style configuration is required as described in the APR/native
         documentation -->

    <Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
    keystoreFile="/usr/local/XRL/666666666666.pfx"
    keystoreType="PKC666"
    keystorePass="666666666666666"
               clientAuth="false" sslProtocol="TLS" />

    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

將以上內容中的8443替換成443,就是下面這樣前端

<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />

<!-- Define a SSL HTTP/1.1 Connector on port 443
This connector uses the BIO implementation that requires the JSSE
style configuration. When using the APR/native implementation, the
OpenSSL style configuration is required as described in the APR/native
documentation -->

<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/usr/local/XRL/666666666666.pfx"
keystoreType="PKC666"
keystorePass="666666666666666"
clientAuth="false" sslProtocol="TLS" />

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />

固然註釋內的不必定要改,還有就是不要複製粘貼個人,個人證書和大家的不同。
這樣改事後,再訪問https://域名的時候,就不須要帶端口號了。可是我仍是以爲不爽啊,由於瀏覽器默認是訪問http的地址,這樣每次訪問https我都須要將域名補全,做爲一個強迫症晚期,我又要抓狂了。
打開你tomcat下的conf文件夾,編輯裏面的web.xmljava

</welcome-file-list>

在上面兩行標籤之間添加(通常你沒有改過web.xml的狀況下,這是該文件最後兩行代碼)以下代碼web

<login-config>
<!-- Authorization setting for SSL -->
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<!-- Authorization setting for SSL -->
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>

這樣當你訪問http://的時候會自動跳轉到https://上去。ok,至此,強迫症就行了一大半了,咱們也能夠開始寫後臺服務了。
至於連https證書都尚未搞定的同窗,請移步(天河微信小程序入門《二》
天河君以前是java狗,此次的後臺也是用java部署的,用的是傳統的web框架SSM,使用了極樂科技的一鍵部署工具。由於很久沒有搭框架了,還好有這樣的一鍵部署工具,否則又要一點點配置框架,簡直是瘋掉。一鍵生成SSM框架後,天河君就直接開始寫業務代碼了。嗯嗯~很是簡單的代碼:apache

/**
     * 獲取系統時間。
     * @return 獲取系統時間。
     * @author Sdanly
     * @since 1.0
     */
        @ResponseBody
        @RequestMapping(value=<span style="white-space: pre; line-height: 1.5;">"/getTime"</span><span style="line-height: 1.5;">, method=RequestMethod.GET)</span>
        public Map<String, Object> getTime(HttpServletRequest req) {
                Map<String, Object> params = new HashMap<String, Object>();
                SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                params.put("time", time.format(new Timestamp(System.currentTimeMillis())));
                
                return params;
        }

是的,天河君只是想測試先後臺的環境是通的,所謂欲練神功,先打通任督二脈嘛。
前臺則是作了一個按鈕,將後臺傳送上來的時間顯示出來而已。demo會在文末提供下載(很是簡單的demo,你們也能夠嘗試本身去作)
這個請求會返回一個name是"time",value是當前服務器時間的json串回來。獲取以後顯示在前臺的頁面就ok了。
json


手機上的效果就是這樣的。雖然很簡單,但主要是爲了證實先後臺通信正常嘛,也就沒有寫太複雜了。
後期天河在學習小程序製做的過程當中,會寫更多的後臺調用服務,由於不少朋友都是純前端,只是想學習小程序自己的開發,對後臺的環境搭配等並不熟悉,也不感興趣。因此天河在這裏想公佈後臺的api和配置方法,若是有朋友只是想學習小程序前端的知識,能夠直接調用api,不用去管後臺的邏輯處理。按照咱們約定好的藉口接收數據就能夠了。
後臺的域名是https://api.wxapp-union.com,這個獲取時間的api是getTime,在小程序中的調用方法是小程序

wx.request({
      url: 'https://api.wxapp-union.com/getTime'

返回的報文是微信小程序

{"time":"2016-11-09 20:22:47"}

沒有appId的朋友直接在開發工具上就能夠調試,有appId的朋友,在你的後臺開發設置中,將咱們的域名寫入服務器配置就能夠了。
api


這樣就能夠將後續的demo直接在手機上調試。若是你們有什麼需求,或者想要的api接口和功能,均可以在原貼(wxapp-union.com)的下方提出來,天河君盡力幫你們開發。
 瀏覽器

測試demo下載:http://pan.baidu.com/s/1slF5THN

相關文章
相關標籤/搜索