Skip to main content

jsend的python模块

项目描述

# 它是什么?

一个带有简化和修改的 python jsend 模块。


# 注意:
python版本:>=3.5

(对于p​​ython2.7版本,使用jsend_version <0.9,例如:https://github.com/darkdarkfruit/jsend/releases/tag/v_0.7.1)#JSEND


MODIFIED DRAFT


##原创jsend 链接:
[https://labs.omniti.com/labs/jsend](https://labs.omniti.com/labs/jsend)


## 修改内容:
### 字段:


|------ --+--------+----------+----------+---------------- ---------------------------------------|
| 领域 | 类型 | 必填 | 可选 | 含义 |
|--------+--------+----------+----------+--------- ----------------------------------------------|
| 状态 | 字符串 | * (S/F) | | 响应成功了吗?|
| 代码 | 任何| | * | 应用程序逻辑代码(通常为整数) |
| 数据 | 任何| | * | 响应的数据(有效负载) |
| 描述 | 任何| | * | 描述:通常是帮助信息 |
| 元 | 任何| | * | 例如:分布式环境中的服务器/ips 链。|
| | | | | |
|--------+--------+----------+----------+--------- ----------------------------------------------|

* 字段:状态始终处于状态:“S”或“F”(代表“成功”、“失败”),没有第 3 种状态。
* 原始状态:('success', 'fail', 'error')
区分失败或错误太痛苦了,所以 2 个状态("S", "F") 就足够了。

* (-) 删除了原始的“消息”字段,因为它是模糊的。(完整的消息?帮助文本?)

* (+) 添加字段:desc 来描述此消息。(该字段是可选的)

* (+) Add field:meta 添加一些元信息。(例如:网络链,节点名称,代理信息,...)





# 安装:


下载 tarbal,解压,然后运行“python setup.py install”

#测试:
> pip3 install pytest
> whereis pytest
> pytest: /usr/local/bin/pytest
> pytest --version
> 这是 pytest 版本 3.3.2 , 从 /usr/local/lib/python3.6/site-packages/pytest.py
>>
pytest jsend/导入

* 很简单:只需要​​使用 1 个类和 2 个函数。
* 1 类:消息
* 2 函数:make_successful_message、make_failed_message


* 用法:(示例)


Python 3.6.2(默认,2017 年 8 月 10 日,10:07:10)
键入“版权”、“信用”或“许可”以获取更多信息
IPython 6.1.0——增强的交互式 Python。类型 '?' 求助。

在 [1]:导入 jsend
...:

在 [2]:jsend.__version__
...:
Out[2]:'0.9'

在 [3]:msg = jsend.make_successful_message(code=0, data={' payload' : 'yes'})
...:

In [4]: msg
Out[4]:
{'code': 0,
'data': {'payload': 'yes'},
'desc': None,
'meta': 无,
'status': 'S'}

在 [5]: msg.dumps()
Out[5]: '{"status": "S", "code": 0, "data": { “有效载荷”:“是”},“描述”:空,“




在 [7] 中:msg_failed = jsend.make_failed_message()
...:

在 [8] 中:msg_failed
Out[8]:{'code':无,'data':无,'desc':无,'meta':无,'status': 'F'}

In [9]: msg_failed.dumps()
Out[9]: '{"status": "F", "code": null, "data": null, "desc" : null, "meta": null}'

In [10]: msg_failed.dumps(skip_none=True)
Out[10]: '{"status": "F"}'

In [11]: msg_loaded = jsend.Message。 load(msg.dumps())
...:

In [12]: msg_loaded
Out[12]:
{'code': 0,
'data': {'payload': 'yes'},
'desc':无,
'meta':无,
'status':'S'}

在 [13] 中:msg_loaded.data = 0

在 [14] 中:msg_loaded = jsend.Message.loads(msg.dumps())
...:

在 [15] 中:msg_loaded
Out[15]:
{'code': 0,
'data': {'payload': 'yes'},
'desc': 无,
'meta': 无,
'status': 'S'}

In [16]: msg_loaded.dumps()
Out[16]: '{"status": "S", "code": 0, "data": {"payload": "yes"}, "desc": null, "meta": null}'

In [17]: msg_loaded.dumps(skip_none=True)
Out[17] : '{"status": "S", "code": 0, "data": {"payload": "yes"}}'

在 [18] 中:

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

python-jsend-0.9.2.tar.gz (149.9 kB 查看哈希

已上传 source