• <ul id="cgeq2"></ul>
  • 歡迎您光臨深圳塔燈網絡科技有限公司!
    電話圖標 余先生:13699882642

    網站百科

    為您解碼網站建設的點點滴滴

    用Nginx實現微信小程序本地SSL請求

    發表日期:2018-10 文章編輯:小燈 瀏覽次數:3116

    更新:由于現在小程序IDE已經自帶“不校驗請求域名以及TSL版本”的功能,不需要在本地配置這些復雜的環境來開發了。但本文依然可以作為在本地模擬生產環境的一種方法。


    在11月3日微信小程序發布公測后,相信很多人已經順利獲得資格并拿到appId。但當你把之前的項目換上剛拿到的appId后會發現原來的wx.request和其他請求都不能用了。

    image

    </figure>

    原來,在一個設置過appId的小程序項目里,任何請求url都必須是微信公眾平臺設置過的域名。你需要登錄微信公眾平臺,在設置 > 開發設置 > 服務器配置中填寫域名。注意這里不支持localhost,127.0.0.1等,只支持像example.com這樣的真實域名,且需要SSL。

    image

    </figure>

    當把域名配置好后,在小程序IDE里就能給這些域名發送請求了。然而我們并不想每次測試時都部署到服務器上,必須在本地搭建一個合適的開發環境。大致分三步:

    1. 修改hosts文件

    先找到hosts文件

    Mac目錄:/etc/hosts
    PC目錄: C:\Windows\System32\drivers\etc\hosts

    然后添加下面這行,將合法域名映射到本地,再保存

    127.0.0.1 yourdomain.com

    2. 生成自簽名SSL證書

    首先需要有OpenSSL。Mac是自帶的,無須再安裝;PC可以使用git-bash這類工具

    這是生成自簽名證書的教程 How to create a self-signed Certificate,下面是我簡化的版本,如果懶得看英文原版可以直接往下看。

    打開命令行:

    1. 生成Private Key
    輸入命令 openssl genrsa -des3 -out server.key 1024

    2. 生成CSR (Certificate Signing Request)
    輸入命令 openssl req -new -key server.key -out server.csr
    然后根據提示依次輸入信息,域名不要填錯

    3. 移除Passphrase
    cp server.key http://server.key.org
    openssl rsa -in http://server.key.org -out server.key

    4.生成自簽名證書
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

    完成了以上4步后,將server.crt和server.key移到你想要存放證書的地方。

    3. 安裝和配置 nginx

    接下來需要通過nginx來載入SSL證書 ,這樣就可以向本地服務器發送https請求了。

    Mac命令行運行brew install nginx來安裝,如果不知道brew是什么可以搜下HomeBrew。PC上可以直接下載Nginx安裝包 nginx for Windows

    然后修改nginx配置文件,在Mac的路徑是/usr/local/etc/nginx/nginx.conf,在PC的路徑是你的安裝路徑,里面找nginx.conf這個文件。打開后在此添加一個server,并將剛才生成的crt和key目錄放在相應的位置,如下:

    server { listen 443 ssl; ssl_certificate /ssl/server.crt; # 剛生成的crt ssl_certificate_key /ssl/server.key; # 剛生成的key server_name yourdomain.com; # 你的域名 ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; location / { proxy_pass http://127.0.0.1:3000; # 本地服務器地址及端口 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_set_header X-Forward-Proto https; proxy_http_version 1.1; # for websocket proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; }}

    改完保存,并運行nginx。
    Mac:sudo nginx
    PC:直接雙擊安裝目錄下nginx.exe

    4. 測試

    根據以上的配置,就可以在小程序IDE直接向本地域名發送https請求了。此請求會發送到 http://127.0.0.1:3000/login

    wx.request({ url: 'https://yourdomain.com/login', data: {}, method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT success: function(res){ // success } })

    完畢,這就是如何搭建小程序在本地模擬請求遠程https服務器的方法 。希望能給剛拿到小程序appId的開發者一些參考。


    本頁內容由塔燈網絡科技有限公司通過網絡收集編輯所得,所有資料僅供用戶學習參考,本站不擁有所有權,如您認為本網頁中由涉嫌抄襲的內容,請及時與我們聯系,并提供相關證據,工作人員會在5工作日內聯系您,一經查實,本站立刻刪除侵權內容。本文鏈接:http://www.juherenli.com/20421.html
    相關開發語言
     八年  行業經驗

    多一份參考,總有益處

    聯系深圳網站公司塔燈網絡,免費獲得網站建設方案及報價

    咨詢相關問題或預約面談,可以通過以下方式與我們聯系

    業務熱線:余經理:13699882642

    Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.    

    • QQ咨詢
    • 在線咨詢
    • 官方微信
    • 聯系電話
      座機0755-29185426
      手機13699882642
    • 預約上門
    • 返回頂部
    四虎精品影库4HUTV四虎| 日韩精品内射视频免费观看 | 亚洲av无码国产精品色午夜字幕| 精品国产乱码久久久久久郑州公司| 久久91综合国产91久久精品| 国产综合精品在线| 无码国产精品一区二区免费式直播| 久久这里只精品热免费99| 亚洲av无码成人精品区| 亚洲精品人成网线在线播放va| 日韩精品无码免费一区二区三区| 不卡精品国产_亚洲人成在线| 国产精品一区二区香蕉| 国产精品亚洲专区无码牛牛| 国产精品成人va| 91精品国产入口| 日本一区精品久久久久影院| 三上悠亚日韩精品一区在线| 亚洲国产综合精品中文字幕| 国产精品李雅在线观看| 国产精品久久久久乳精品爆| 窝窝午夜看片成人精品| 精品人妻系列无码一区二区三区| 无码人妻精品一区二区三区久久 | 91麻豆精品国产| 亚洲精品99久久久久中文字幕| 国产麻豆剧果冻传媒免精品费网站| 国产成人精品18| 国产成人午夜精品影院游乐网| 久久亚洲精品专区蓝色区| 2021国产精品久久久久| 色一乱一伦一图一区二区精品| 久久精品视频16| 久久久精品人妻一区二区三区| 久久青青草原国产精品免费| 国产精品污WWW在线观看| a级精品九九九大片免费看| 一本一本久久aa综合精品| a级国产精品片在线观看| 亚洲精品美女久久久久99| 久久国产乱子精品免费女|