1. 程式人生 > >微信小程式——1、搭建自己的Https伺服器

微信小程式——1、搭建自己的Https伺服器

一、註冊微信小程式

      進入微信公眾平臺,使用郵箱賬號,選擇註冊小程式賬號。一個郵箱只能註冊一個型別的微信賬號(訂閱號、服務號、小程式)。

二、搭建Https伺服器

      1、域名註冊

        1.1、登入騰訊雲平臺,並註冊賬號。

        1.2、選擇“雲產品”—”域名服務“—”域名管理"

        1.3、選擇“域名”註冊,根據提示進行註冊。需要繳納一定費用。

2、SSL證書管理

      2.1、選擇“雲產品”—”域名服務“—”SSL證書管理",選擇“申請證書(免費)”。若未認證,系統將提示進入系統認證

      2.2、個人認證。

      2.3、下載SSL證書。用於服務配置

      2.4、本地安裝證書。參考“證書安裝指引”:https://cloud.tencent.com/document/product/400/4143

3、tomcat安裝本地證書

      3.1、下載SSL證書,解壓並將對應Tomcat下的www.domain.com.jks檔案複製到tomcat安裝目錄下的conf目錄下。

      3.2、修改conf下的server.xml檔案(先複製一份server.xml,防止修改內容出錯)。修改內容如下:

       a、將Http埠設定為預設的80埠,重定向埠設定為443(小程式伺服器僅支援以上兩個埠)。

       b、新增SSL請求如下:

<Connector SSLEnabled="true" acceptCount="100" 
	clientAuth="false" disableUploadTimeout="true" 
	enableLookups="true" 
	keystoreFile="/conf/www.uyehyyh.com.jks" 
	keystorePass="yourKeystorePass" maxThreads="200" 
	port="443" 
	protocol="org.apache.coyote.http11.Http11NioProtocol" 
	scheme="https" secure="true" sslProtocol="TLS"/>
4、搭建第一個Https應用

      1、Eclipse建立一個應用,在相應的web.xml倒數第二行,即</webapp>上一行,新增如下程式碼:

<login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>Client Cert Users-only Area</realm-name>
  </login-config>
  <security-constraint>
    <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>

      2、啟動專案,本文使用Spring簡單的向輸出流輸出字串,用於小程式的接受。
	@RequestMapping("/test")
	@ResponseBody
	public String test(){
		return "hehe";
	}

      3、通過騰訊雲註冊的域名訪問相應Servlet,Http請求將自動轉入Https請求


三、微信小程式訪問伺服器,並獲取返回值

      1、伺服器配置

        1.1、進入微信公眾平臺,並用小程式進行登入,選擇“設定”—“開發設定”。在“伺服器域名中,選擇修改域名,填入騰訊雲所申請的域名。如下圖:


       1.2、小程式中js呼叫微信介面,並訪問伺服器,獲取返回值

wx.request({
      url:'https://mydomain.com/springmvc1/view/test',
      method:'post',
      success:function(res){
        console.log(res.data);
      }
 })
      自此,小程式成功通過https的方式與伺服器進入連線。