IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Odoo的XMLRPC调用 -> 正文阅读

[Python知识库]Odoo的XMLRPC调用

Odoo的XMLRPC调用

使用场景

  • 需要运行脚本调用odoo的模型方法,对数据库进行修改
  • 企业内部有多个系统服务,系统间互相调用模型方法

基本调用过程

  1. 服务端定义好模型和方法
    • 服务端odoo orm方法能被调用
    • 加了@api.model装饰器的函数能被调用
    • 为了让不同语言调用,一般返回值要序列化,json或xml都行
class xmlrpc_galaxy(models.Model):
    _name = 'xmlrpc_galaxy.xmlrpc_galaxy'
    _description = 'xmlrpc_galaxy.xmlrpc_galaxy'

    
    @api.model
    def get_res_partners(self, operation, raise_exception=True):
        # 不要_get_res_partners
        _logger.info(f"-- get_res_partners:")
        records = self.env['res.users'].sudo().search([])
        internal_users = records.filtered(lambda pav: pav.share == False)
        user_dict = {str(r.id): str(r.login) for r in internal_users} 
        _logger.info(f"-- user_dict: {user_dict}")
        return json.dumps(user_dict)
    
    @api.model
    def get_permission_check(self):
        _logger.info(f"--- in get_permission_check:")
        return 'haha'
  1. 创建用户
    • 根据实际业务需求创建internal或者public用户,xmlrpc的权限等同于用户权限
    • 也可用API key代替明文密码,提高安全性
  2. 客户端调用
    • 正常调用,按照官网实例,获取用户id,每次调用时将用户名密码数据库,方法传递即可。

XMLRPC性能测试

  1. 经jmeter性能测试,当worker = 4时,如果没超出硬件限制,大概能支撑住1000+个并发请求,空载时吞吐量为500/sec. 且worker数越多,对并发的支持就越好。

类似方法

  1. odoorpc
  2. jsonrpc
    调用方法可参考:https://blog.csdn.net/lm_is_dc/article/details/115523781

其他

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-05-27 17:17:41  更:2022-05-27 17:19:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:27:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码