目录

Odoo-Http鉴权调用后端接口

Odoo18 Http鉴权+调用后端接口

最近在调研Odoo18,包括它的前后端原理、源码等。发现官方的开发文档并不十分实用,比如标题这种简单的实用需求,竟然浪费了一点时间,特此记录。

官方文档:

前提:首先已经成功运行了Odoo,我是源码运行的。

说明:Odoo提供了json-rpc、xml-rpc两种,由于xml解析繁杂可读性差,所以选用json。

1.  鉴权获取用户ID

可以通过用户名&密码来鉴权,也可以通过用户名&秘钥来鉴权。

Post请求  header <Content-Type: application/json>

入参说明(像是jsonrpc、method、params.method等这类应该都是固定的,重点说下args里的参数):

args第一个参数是数据库名 (必填);

args第二个是用户名,也就是你登录odoo的用户名(必填);

args第三个参数可以是登录密码,也可以是秘钥(在右上角用户-我的设置-账户安全-API秘钥这里新增)。 https://i-blog.csdnimg.cn/direct/e85fe088a83e4c2ab26b9dee04fb96f4.png

2.  调用接口

我是启用了采购模块,在采购里加了几条采购订单用来测试。

重点还是args里的几个参数,第一个数据库名,第二个鉴权返回的用户ID,第三个是秘钥(也可以是密码),第四个是接口地址(他有很多功能模块,好像并没有文档列出来,我觉得可以查看请求自己分析)。

https://i-blog.csdnimg.cn/direct/71a2d98959b2437bba318b5e065f9971.png

请求示例

https://i-blog.csdnimg.cn/direct/ae35645a4b8047d392e03e1f9420c587.png

分析它的接口

3.  总结

总感觉它的鉴权有点臃肿,比如第1、2步中都要指定数据库名和携带秘钥 https://i-blog.csdnimg.cn/direct/30715c970a9144f49f93244aab61aa45.png

而且它的源码方式启动和调试也不太顺利,有时间再说下源码部署和调试的问题。