Odoo Http鉴权+调用后端接口

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

官方文档:External API — Odoo 18.0 documentation

前提:首先已经成功运行了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秘钥这里新增)。

 2.  调用接口

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

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

请求示例

        

分析它的接口

3.  总结

        总感觉它的鉴权有点臃肿,比如第1、2步中都要指定数据库名和携带秘钥

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/72257.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Go每日一练】实现简单的控制台计算器

&#x1f47b;创作者&#xff1a;丶重明 &#x1f47b;创作时间&#xff1a;2025年3月7日 &#x1f47b;擅长领域&#xff1a;运维 目录 1.&#x1f636;‍&#x1f32b;️题目&#xff1a;简单的控制台计算器2.&#x1f636;‍&#x1f32b;️代码输出3.&#x1f636;‍&#…

Linux常见问题与分析

操作系统进行线程切换时进行的动作 1. 保存当前线程的上下文 寄存器状态&#xff1a;保存 CPU 寄存器&#xff08;如通用寄存器、程序计数器 PC、栈指针 SP 等&#xff09;到当前线程的 线程控制块&#xff08;TCB&#xff09; 中。内核栈信息&#xff1a;如果线程在内核态运…

HTML块级元素和内联元素(简单易懂)

在HTML中&#xff0c;元素可以分为块级元素&#xff08;Block-level elements&#xff09;和内联元素&#xff08;Inline elements&#xff09;。这两类元素在页面布局和样式应用上有不同的特点和用途。 一、块级元素&#xff08;Block-level elements&#xff09; 1. 定义 …

VSTO(C#)Excel开发6:与窗体交互

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…

Node.js与VUE安装

目录 Win下载安装 Mac下载安装 Win与Mac配置检查是否安装成功切换淘宝NPM库检查镜像配置是否生效设置 npm 全局环境目录&#xff08;避免权限问题&#xff09;WinMac VUE CLI安装安装验证打开vue面板 Vue脚手架npm init vuelatest、npm create vuelatestvue create、vue ui Win…

快速集成1688商品API:10分钟实现跨境选品数据自动化

要快速集成 1688 商品 API 以实现跨境选品数据自动化&#xff0c;可参考以下步骤&#xff1a; 注册并申请 API 权限&#xff1a;注册账号创建应用并申请所需的 API 权限&#xff0c;如商品搜索、筛选、获取详情等相关权限。获取 API Key 和 Secret&#xff1a;在应用管理页面获…

解决 MySQL 迁移到达梦报错 “无效的列名” 的问题

在数据库迁移的过程中&#xff0c;常常会遇到各种各样的问题。本文将聚焦于从源库 MySQL&#xff08;大小写不敏感&#xff09;迁移到目标库达梦&#xff08;大小写敏感&#xff09;时&#xff0c;出现的创建索引报错 “无效的列名” 这一问题&#xff0c;使用SQLark工具如何避…

工程化与框架系列(31)--前端依赖管理实践

前端依赖管理实践 &#x1f4e6; 引言 前端依赖管理是现代Web开发中的重要环节。本文将深入探讨前端依赖管理的最佳实践&#xff0c;包括包管理工具、版本控制、依赖分析和优化等方面&#xff0c;帮助开发者更好地管理项目依赖。 依赖管理概述 前端依赖管理主要包括以下方面…

C/C++都有哪些开源的Web框架?

CppCMS CppCMS是一个采用C语言开发的高性能Web框架&#xff0c;通过模版元编程方式实现了在编译期检查RESTful路由系统&#xff0c;支持传统的MVC模式和多种语言混合开发模式。 CppCMS最厉害的功能是WebSocket&#xff0c;10万连接在内存中长期保存占用的大小不超过600MB&…

数据结构——环形数组

环形数组 start 指向第一个有效元素的索引&#xff0c;end 指向最后一个有效元素的下一个位置索引。 注意&#xff1a; start是闭区间&#xff0c;先左移后赋值&#xff0c;先赋值(null)后右移&#xff1b;end是开区间&#xff0c;先赋值再右移&#xff0c;先左移再赋值(null…

大数据学习(59)-DataX执行机制

&&大数据学习&& &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 承认自己的无知&#xff0c;乃是开启智慧的大门 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一下博主哦&#x1f91…

云原生性能测试全解析:如何构建高效稳定的现代应用?

一、引言 随着云计算技术的快速发展&#xff0c;云原生&#xff08;Cloud Native&#xff09;架构成为现代应用开发的主流模式。云原生应用通常采用微服务架构、容器化部署&#xff0c;并利用 Kubernetes&#xff08;K8s&#xff09;等编排工具进行管理。然而&#xff0c;云原…

golang的Map

Map集合 概述 Map 是一种无序的键值对的集合。 Map 最重要的一点是通过 key 来快速检索数据&#xff0c;key 类似于索引&#xff0c;指向数据的值。 Map 是一种集合&#xff0c;所以我们可以像迭代数组和切片那样迭代它。不过&#xff0c;Map 是无序的&#xff0c;遍历 Map…

USB数据采集卡 Labview采集卡 32路AD模拟量采集 DAQ卡

今天给大家介绍阿尔泰科技的一款多功能数据采集卡USB3150/1/2/5/6 。 该板卡提供 32RSE / NRSE 通道或 16 通道 DIFF 模 拟量输入&#xff1b;4 通道模拟量同步输出&#xff1b;16 路可编程 I/O&#xff1b;2 路计数器。 USB3150/1/2/5/6 的主要应用场合为&#xff1a;电子产品…

K8s 1.27.1 实战系列(十)PV PVC

一、核心概念与关系 ​1、PV(Persistent Volume)​ PV 是集群中的持久化存储资源,由管理员预先创建并配置,独立于 Pod 生命周期。它抽象了底层存储(如 NFS、云存储等),定义存储容量、访问模式(如 ReadWriteOnce)、回收策略(Retain/Delete/Recycle)等属性。例如,一…

基于DeepSeek的智能数据分析和自动化处理系统:引领BI行业新变革

近期&#xff0c;一款基于DeepSeek API的智能数据分析和自动化处理系统横空出世&#xff0c;以其强大的功能和灵活的可扩展性&#xff0c;为BI行业带来了颠覆性的变革。 该系统支持多类型数据分析&#xff0c;包括文本 、指标和日志等。在文本分析方面&#xff0c;它能够提取关…

图形学面试题总结

图形学面试题总结 文章目录 图形学面试题总结Opengl 与 Vulkan1、OpenGL的渲染管线有哪些主要阶段&#xff1f;分别做什么&#xff1f;2、OpenGL中的VAO、VBO和EBO分别是什么&#xff1f;为什么需要它们&#xff1f;3、细分着色器与几何着色器是什么4、Vulkan与Opengl的区别是什…

Vue 系列之:路由

vue-router 组件 router-link 功能&#xff1a;用于导航&#xff0c;即渲染一个链接&#xff0c;当点击时&#xff0c;导航到由 to 属性指定的 URL。 示例&#xff1a;<router-link to"/home">Home</router-link> 它会渲染为一个 <a> 标签&…

通过mybatis的拦截器对SQL进行打标

1、背景 在我们开发的过程中&#xff0c;一般需要编写各种SQL语句&#xff0c;万一生产环境出现了慢查询&#xff0c;那么我们如何快速定位到底是程序中的那个SQL出现的问题呢&#xff1f; 2、解决方案 如果我们的数据访问层使用的是mybatis的话&#xff0c;那么我们可以通过…

【Linux】centos配置可用的yum源

在 CentOS 系统中配置可用的 YUM 源&#xff08;仓库&#xff09;是保持系统更新和软件包管理的重要步骤。下面是一些步骤和示例&#xff0c;帮助你配置可用的 YUM 源&#xff1a; 1. 备份当前 YUM 仓库配置 首先&#xff0c;备份你当前的 YUM 仓库配置文件&#xff0c;以防万…