为 N1KV REST 调用启用 JSON 支持

https://blueprints.launchpad.net/neutron/+spec/cisco-n1kv-json-support

需要使 Cisco N1KV 插件能够接受 REST API 以 JSON 格式返回的响应。

问题描述

目前,Cisco N1KV Neutron 插件和 VSM(控制器)使用 REST API 进行通信。VSM 能够以 XML 和 JSON 格式返回响应。但是,该插件仅处理 XML 响应。

提议的变更

建议的更改是使用 Requests 库来支持处理 REST API 以 JSON 格式返回的响应。Requests 库将取代插件当前使用的 httplib2 库。

备选方案

数据模型影响

REST API 影响

安全影响

通知影响

其他最终用户影响

性能影响

其他部署者影响

requests 库版本 >= 1.1(根据 neutron requirements.txt)

开发人员影响

实现

负责人

主要负责人

sopatwar

其他贡献者

abhraut

工作项

  • 用 Requests 库替换插件中使用的 httplib2 库。

  • 修改 n1kvclient 中的所有方法以使用 Requests 库。

  • 替换策略配置文件的响应处理程序中的当前 XML 解析逻辑以处理 JSON 响应。

依赖项

测试

目前,单元测试包括 XML 响应的覆盖。将修改测试代码以处理 JSON 响应。

文档影响

参考资料