Monthly Archives: 10月 2014

微信昵称中的特殊字符的过滤

2014-10-16 by Jinyang | No Comments | Filed in 技术相关

/*** * 微信的昵称中特殊字符的过滤 * ***/ public static String wxNickName(String str) { // TODO Auto-generated method stub String ret = “”; try { byte[] utf8Bytes = str.getBytes(“UTF-8”); ret = new String(utf8Bytes, “UTF-8”); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } Pattern unicodeOutliers = Pattern.compile(“[^\\x00-\\x7F]”, Pattern.UNICODE_CASE | Pattern.CANON_EQ | Pattern.CASE_INSENSITIVE); Matcher unicodeOutlierMatcher = unicodeOutliers.matcher(ret); //System.out.println(“Before: ” + ret); […]

Tags:

利用微信客服接口化同步服务为异步服务

2014-10-11 by Jinyang | No Comments | Filed in 技术相关

微信公众平台要求接口API接收消息后在5s内必须发回响应,负责当次的响应就无法发回到客户微信。 对于一些响应慢、需要人工处理回复的场景,可以先直接接收消息而不响应,由单独的响应处理服务逐条处理消息然后使用客服接口给用户下发消息。 客服消息接口要求公众号必须为认证公众号。

微信接口HTTP请求的再次分发

2014-10-11 by Jinyang | No Comments | Filed in 技术相关

不同的业务分布在不同的服务中,但是接入微信公众平台的接口地址只能有一个,所以就需要接入程序接收到请求后,将请求再次转发给需要处理的服务去处理。 1. 获取并保存完整的http请求数据包 直接从 request.getInputStream() 获取数据有一个问题就是因为字节流只允许获取一次,所以第二次想要再获取时会报错,这个是java字节流设计如此,所以就需要用中间变量来进行中转。 try { InputStream inputStream = request.getInputStream(); ByteArrayOutputStream baos = new ByteArrayOutputStream();  //中间变量 byte[] buffer = new byte[1024]; int len; while ((len = inputStream.read(buffer)) > -1 ) { baos.write(buffer, 0, len); } baos.flush(); InputStream stream1 = new ByteArrayInputStream(baos.toByteArray());  //供第一次分析提取数据使用 InputStream stream2 = new ByteArrayInputStream(baos.toByteArray());  //供第二次分析提取数据使用 //System.out.println(inputStream.toString()); SAXReader reader = new SAXReader(); […]

免费1年的亚马逊Windows虚拟主机

2014-10-11 by Jinyang | No Comments | Filed in 站长视点

大名鼎鼎的亚马逊AWS一直是引领着云计算的发展, 但是因为身在天朝,所以只用过linode、阿里云、digitalocean的linux主机,本质的原因是因为windows主机都比较贵,windows对硬件内存的需求也比较高,而vps的内存目前还是个比较贵的资源。 AWS提供免费一年的主机服务,还有windows选项,因为想要开发一个小的WinForm程序需要一个不间断运行的windows机器,于是就申请了一个。 配置如下: t2.micro (Variable ECUs, 1 vCPUs, 2.5 GHz, Intel Xeon Family, 1 GiB memory, EBS only) EBS(Elastic Block Store)为亚马逊EC2实例提供持久化存储。   1. 安装配置mysql    部署tomcat启动在80端口 因为此前都是用的linux,数据库自然也都是mysql,为了保持代码的一直性,所以虽然自带了sqlserver,但是需要手工把ms sql server的进程服务全部停止,下载安装运行mysql 。 部署tomcat,启动在80端口 2. 配置security group 3. 配置windows防火墙 ,默认的就是aws的防火墙和windows的防火墙,所以2个都要配置,多一些保障 4. 运行后的状态   部署了一个微信服务,解析了一个域名到主机,使用很方便。监控了几天,相当的稳定。 欢迎扫描测试。

返回顶部