微信这个东西估计宅男没几个不熟悉的吧,微信经过这么两年多的发展终于向开放平台跨出了友好的一步。蛋疼的以为微信会出一个详细的api等接口,兴奋不已的去申请了微信公共平台,然后开始找各种api的位置……
花费了近一个小时,依然没找到……
最后动用Google大杀器,终于找到了这么个链接。我了个去的,没比这还简单的api文档了吧。
最让人无法理解的是:居然没有本地开发环境支持,每次都要放在生产环境去调试。
最让人欣慰的是:就那么俩方法,生产环境调试几次也就完事了。
Python(bottle)版代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
# -*- coding:utf-8 -*- from bottle import debug, default_app, run, get, request, post import sys, os, time, libxml2dom @get ( '/' ) def index(): return request.GET.get( 'echostr' ) @post ( '/' ) def index_post(): for key, value in request.POST.allitems(): doc = libxml2dom.parseString(key) _to = doc.xpath( '//FromUserName' )[ 0 ].textContent _from = doc.xpath( '//ToUserName' )[ 0 ].textContent #_content = doc.xpath('//Content')[0].textContent return """<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>""" % (_to, _from, int (time.time()), u '我了个去啊' ) if __name__ = = "__main__" : # Interactive mode debug( True ) port = int (sys.argv[ 1 ] if len (sys.argv) > 1 else 8888 ) run(host = '0.0.0.0' , port = port, reloader = True ) else : # Mod WSGI launch os.chdir(os.path.dirname(__file__)) app = default_app() |
演示直接看图: