文档章节

天河微信小程序入门《三》:打通任督二脉,前后台互通

qianmenchuxue
 qianmenchuxue
发布于 2016/11/09 21:18
字数 1242
阅读 159
收藏 1
点赞 0
评论 0

天河君在申请到https证书后就第一时间去部署后台环境,但是发现每次访问https都要带上8443端口实在是很坑爹啊,作为一个强迫症晚期,我要做的自然是不带端口直接访问。
打开你tomcat下的conf文件夹,编辑里面的server.xml

<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.xml

</welcome-file-list>

在上面两行标签之间添加(一般你没有改过web.xml的情况下,这是该文件最后两行代码)如下代码

<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框架后,天河君就直接开始写业务代码了。嗯嗯~非常简单的代码:

/**
     * 获取系统时间。
     * @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了。


手机上的效果就是这样的。虽然很简单,但主要是为了证明前后台通讯正常嘛,也就没有写太复杂了。
后期天河在学习小程序制作的过程中,会写更多的后台调用服务,因为很多朋友都是纯前端,只是想学习小程序本身的开发,对后台的环境搭配等并不熟悉,也不感兴趣。所以天河在这里想公布后台的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的朋友,在你的后台开发设置中,将我们的域名写入服务器配置就可以了。


这样就可以将后续的demo直接在手机上调试。如果大家有什么需求,或者想要的api接口和功能,都可以在原贴(wxapp-union.com)的下方提出来,天河君尽力帮大家开发。
 

测试demo下载:http://pan.baidu.com/s/1slF5THN

© 著作权归作者所有

共有 人打赏支持
qianmenchuxue
粉丝 17
博文 13
码字总数 17593
作品 0
编程微刊第四期文章汇总(2018.4)

编程微刊创立也有一段时间了,在此感谢一直关注我的小伙伴们,你们的关注和支持,是我每天不断更新的动力,我每个月会总结一期微刊,方便大家的阅读。 1. 推荐文章 这个时代,抛弃你的时候,...

祈澈姑娘 ⋅ 05/04 ⋅ 0

新华三CloudOS 为中国外运铸“云”

传统大型企业云平台的落地对云计算厂商的解决方案研发能力和技术服务能力等提出了严苛的要求。此次,在中国外运企业云平台的建设项目中,新华三就遇到了高度定制化的严峻挑战。 中国外运股份...

玄学酱 ⋅ 05/15 ⋅ 0

新课上线|Python实现图片拼接与混合、XML-RPC文件共享程序等

关注「实验楼」,每天分享一个项目教程 最近又上线了哪些新课程?快来看看吧~ 会 员 课 一、《Python3 实现图片拼接与混合》 课程来源:selfim 课程简介:本课程主要是利用 Python 的第三方...

moy37rqw1jarn33bgzk ⋅ 05/12 ⋅ 0

Spring--注解之@Qualifier

Spring注解之@Qualifie 一,问题描述 使用Spring也有一段时间了,记得以前看到@Qualifier这个注解都不知所以然,经常百度, 谷歌,但是今天看源码的时候让我恍然大悟啊,仿佛任督二脉被打通的...

fajor ⋅ 2015/05/13 ⋅ 0

开发了几个小程序后,说说我对小程序的看法

刚看到新闻,微信小程序MAU高达4.7亿,TOP100小游戏占比28% 小程序从发布前的大众期待,到刚发布时成为热点,再到迅速被人遗忘,再到后来慢慢发力缓慢爬坡 现在与一年前已经是完全不一样的情...

codeGoogle ⋅ 05/23 ⋅ 0

【开源访谈】高焕堂:VR 与 AI 的任督二脉还在打通中

Facebook 用 20 亿美金收购了 Oculus 带动了整个 VR 行业的发展。而“人工智能”这个热词是科幻题材的热捧元素, 2016 年 alphaGo 人机大战开启了 AI 新时代。因此,VR、AI 领域的发展趋势、...

凝小紫 ⋅ 2017/01/08 ⋅ 8

一大波编程视频资料赠送(亲自整理)

为了感恩大家长久以来的关注和支持,小编准备了一些福利,整理了包含前端,Java,产品经理,微信小程序,Python,网站源码,Android应用视频教程,微信公众平台开发教程及材料等资源合集大放...

祈澈姑娘 ⋅ 05/08 ⋅ 0

商城类小程序开发全过程(附源码)

商城类小程序是所有类别小程序中开发的热点,但其相对于其他类别的小程序,具有逻辑复杂、功能需求较大等特点,因此,对开发者具有一定的基础要求。 那我们就止步于前了吗? 当然不! 本文主...

大王12 ⋅ 05/02 ⋅ 0

百度翻译google插件使用整理

百度翻译google插件使用整理 一、打开官网,下载插件 http://fanyi.baidu.com/static/webpage/ocrPluginPage.html 百度翻译网页版,http://fanyi.baidu.com/ 二、选择手动安装 三、浏览网页,...

tianma3798 ⋅ 05/29 ⋅ 0

如何在微信小程序中调用腾讯地图api

如果要搜索地图上的位置,比如附近的医院、学校等,就需要使用地图api,使用腾讯地图api的过程如下: 一、开发者申请腾讯地图 进入官网http://lbs.qq.com/key.html 申请密钥 验证完手机邮箱之...

临江仙卜算子 ⋅ 05/25 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Jenkins实践3 之脚本

#!/bin/sh# export PROJ_PATH=项目路径# export TOMCAT_PATH=tomcat路径killTomcat(){pid=`ps -ef | grep tomcat | grep java|awk '{print $2}'`echo "tom...

晨猫 ⋅ 今天 ⋅ 0

Spring Bean的生命周期

前言 Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。 首先看下生命周期图: 再谈生命周期之前有一点需要先明确: Spring 只帮我们管理单例模...

素雷 ⋅ 今天 ⋅ 0

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部