You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地部署Odoo是否支持Webhooks?调用时遇404错误求助

Odoo本地实例Webhook请求404问题排查与解决

我在Odoo SH实例中配置Webhooks实现了多项自动化流程,现在要在本地部署的Odoo实例中复刻相同操作,测试了一段简单的请求代码,但返回404错误。

测试代码

import requests
import json

URL = "server-url"

headers = {"Content-Type": "application/json"}

payload = {
    "name": "Registro usando webhook y python",
    "email_from": "damartinez@swift-solutions.co",
    "phone": "32733888",
    "partner_id": 2,
    "user_id": 2,
}

json_data = json.dumps(payload)

response = requests.post(URL, headers=headers, data=json_data)

print(response.status_code)
print(response.text)

错误返回

404
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>404 Not Found</title>
<h1>Not Found</h1>
<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>

注:示例中的URL已做安全替换,实际使用的是正确的服务器地址。


排查与解决步骤

  • 确认Webhook路由注册正确性
    本地实例必须确保Webhook对应的控制器路由已通过http.route装饰器正确注册,示例如下:

    from odoo import http
    from odoo.http import request
    
    class WebhookController(http.Controller):
        @http.route('/webhook/custom', type='json', auth='public', methods=['POST'], csrf=False)
        def custom_webhook(self, **kwargs):
            # 自定义处理逻辑
            return {'status': 'success'}
    

    需保证请求URL与路由路径、请求方法完全匹配。

  • 检查权限与CSRF设置
    若Webhook路由未设置csrf=False,本地实例的CSRF保护会拦截请求;同时确认路由的auth参数配置合理,比如auth='public'允许匿名访问,或根据需求设置auth='user'并携带认证信息。

  • 验证端口与路径配置
    本地Odoo默认端口为8069,确保URL包含正确端口(如http://localhost:8069/webhook/custom);若使用反向代理(如Nginx),需检查是否存在路径重写或拦截情况。

  • 确认模块安装状态
    包含Webhook控制器的模块必须在本地实例中安装并加载,可在后台应用列表检查模块状态,或通过启动命令-u 模块名更新模块。

  • 添加认证信息(若需要)
    若Webhook路由要求用户认证,需在请求头中加入Authorization字段,示例:

    import base64
    auth = base64.b64encode(b"用户名:密码").decode('utf-8')
    headers = {
        "Content-Type": "application/json",
        "Authorization": f"Basic {auth}"
    }
    

内容的提问来源于stack exchange,提问作者damar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 02:23:22