用于python的微信访问令牌模块。

pywe-token的Python项目详细描述


用于python的微信访问令牌模块。

安装

pip install pywe-token

用法

内存存储:

Token::

    # Sandbox: http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
    In [1]: from pywe_token import Token

    In [2]: token = Token('wx7aad305aed68bfe3', '9eac636765940ec286055c559ff84039')

    In [3]: token.
    token.API_DOMAIN           token.access_info_key      token.expires_at           token.storage
    token.OPEN_DOMAIN          token.access_token         token.get                  token.token
    token.WECHAT_ACCESS_TOKEN  token.appid                token.secret

    In [3]: token.access_token()
    Out[3]: u'ZhvSop2FJxAEyRLjyMIQfcfUS1tG76wGEz6hc-qgRFjaWqnLscdYBRBXVhH-SyiwXpeYTu-LfU2Fj4dTVVE3s-35MhVeaWbUMXmS3lPXgD4yrl8287yfmIXAseZI55_xUOQdADAEYA'


access_token::

    In [1]: from pywe_token import access_token

    In [2]: access_token('wx7aad305aed68bfe3', '9eac636765940ec286055c559ff84039')
    Out[2]: u'ysR7_hUtodKCF1nHjq8gFtagugB8oEOlK6hB6raMztveawVzpnqK2FtftbQGsczTj0h2kc1Gl8R7fjmGVPmXBp306WW8UZUteXqiOgxh3DL0usLRLQVRn56Oi-yigkSoSYNbAIAEKZ'

重新发现存储:

Token::

    In [1]: import redis_extensions as redis

    In [2]: r = redis.StrictRedisExtensions(host='localhost', port=6379, db=0)

    In [3]: from pywe_storage import RedisStorage

    In [4]: storage = RedisStorage(r)

    In [5]: from pywe_token import Token

    In [6]: token = Token('wx7aad305aed68bfe3', '9eac636765940ec286055c559ff84039', storage=storage)

    In [7]: token.access_token()
    Out[7]: u'5kJwbClb1CBo-5Dz_a9hZp6x_6tyDD2NnVe8mBckiv4QhB4iq13gwrplWY1fbnAE8Te_za3p6hyiJ4vG1A-hapM5PDv3PEBBIB445oxv3dShVDBXqORbCnwT37zXwEDDSITbAEANDO'

    In [8]: r.get('pywe:wx7aad305aed68bfe3:access:info')
    Out[8]: '{"access_token": "5kJwbClb1CBo-5Dz_a9hZp6x_6tyDD2NnVe8mBckiv4QhB4iq13gwrplWY1fbnAE8Te_za3p6hyiJ4vG1A-hapM5PDv3PEBBIB445oxv3dShVDBXqORbCnwT37zXwEDDSITbAEANDO", "expires_in": 7200, "expires_at": 1485104793}'


access_token::

    In [1]: import redis_extensions as redis

    In [2]: r = redis.StrictRedisExtensions(host='localhost', port=6379, db=0)

    In [3]: from pywe_storage import RedisStorage

    In [4]: storage = RedisStorage(r)

    In [5]: from pywe_token import access_token

    In [6]: access_token('wx7aad305aed68bfe3', '9eac636765940ec286055c559ff84039', storage=storage)
    Out[6]: u'5kJwbClb1CBo-5Dz_a9hZi1GcqSnLkRV2aYFmjSBTGEvVrH81XhT2eUjunVSJn_ej2uFXLJarjC0dlI78r-HxCWtTNxSPC06ARG_QqE9FoP7VhJNFsPX5z7tsySsCyEgKEZbAIAGAV'

    In [7]: r.get('pywe:wx7aad305aed68bfe3:access:info')
    Out[7]: '{"access_token": "5kJwbClb1CBo-5Dz_a9hZp6x_6tyDD2NnVe8mBckiv4QhB4iq13gwrplWY1fbnAE8Te_za3p6hyiJ4vG1A-hapM5PDv3PEBBIB445oxv3dShVDBXqORbCnwT37zXwEDDSITbAEANDO", "expires_in": 7200, "expires_at": 1485104793}'

方法

class BaseToken(BaseWechat):
    def __init__(self, appid=None, secret=None, token=None, storage=None, token_fetched_func=None):

class Token(BaseToken):
    def __init__(self, appid=None, secret=None, storage=None, token_fetched_func=None):
        super(Token, self).__init__(appid=appid, secret=secret, storage=storage, token_fetched_func=token_fetched_func)

def access_token(self, appid=None, secret=None, storage=None, token_fetched_func=None):

def refresh_access_token(self, appid=None, secret=None, storage=None, token_fetched_func=None):

def final_access_token(self, cls, appid=None, secret=None, token=None, storage=None, token_fetched_func=None):

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
我们应该在测试java代码时模拟黄瓜测试吗。我们应该在多大程度上使用黄瓜?   Hibernate Weblogic 10.3.4 java。lang.NoSuchMethodError:javax/persistence/spi/PersistenceUnitInfo。getValidationMode()Ljavax/persistence/ValidationMode;   java如何在main()中访问私有静态实例变量   java JMockit无法模拟类的公共final字段   java是否可以返回特定控制器操作的输出(html)?   java如何返回正确类型的列表?   rest-OpenUI/Swagger-java-to-API   java组织。springframework。豆。工厂NoSuchBeanDefinitionException或加载ApplicationContext失败   java使用POST将参数从JSP发送到Servlet   java如何监听特定的按钮按下和主视图用户交互?   java如何让gradle在本地maven repo中覆盖库?   如何在Java中“合并”两个URI?   java如何制作一个方法来移动数组中的字符?   使用来自java的命令启动powershell窗口   java垃圾收集器和匿名类   java如何为CellTable(GWT 2.4)中的ImageResourceCell创建PanelPopup?