程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Odoo 14 的邮递员身份验证大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_450_0@如何解决Odoo 14 的邮递员身份验证? 开发过程中遇到Odoo 14 的邮递员身份验证的问题如何解决?下面主要结合日常开发的经验,给出你关于Odoo 14 的邮递员身份验证的解决方法建议,希望对你解决Odoo 14 的邮递员身份验证有所启发或帮助;

如何使用 postman 测试需要身份验证的 odoo 14.0 控制器方法?

我曾经有一个简单的身份验证请求:

网址:http://localhost:8014/web/session/authenticate

方法:GET

标题:Content-Type: application/Json

正文:

{
    "Jsonrpc": "2.0","params": {
        "db": "v14pos","login": "admin","password": "admin"
    }
}

发送身份验证请求后,postman 会设置 session_ID cookie,它会起作用。

但是在 14.0 中,即使设置了 session_ID cookie,在尝试调用需要身份验证的 URL 时,我也会收到以下错误:

{
    "Jsonrpc": "2.0","ID": null,"error": {
        "code": 200,"message": "odoo Server Error","data": {
            "name": "odoo.exceptions.AccessDenIEd","deBUG": "TraceBACk (most recent call last):\n  file \"/home/obi/src/vs/odoo14/addons/http_routIng/models/ir_http.py\",line 450,in _dispatch\n    cls._authenticate(funC)\n  file \"/home/obi/src/vs/odoo14/odoo/addons/base/models/ir_http.py\",line 132,in _authenticate\n    raise AccessDenIEd()\nException\n\nThe above exception was the direct cause of the following exception:\n\nTraceBACk (most recent call last):\n  file \"/home/obi/src/vs/odoo14/odoo/http.py\",line 639,in _handle_exception\n    return super(Jsonrequest,self)._handle_exception(exception)\n  file \"/home/obi/src/vs/odoo14/odoo/http.py\",line 315,in _handle_exception\n    raise exception.with_traceBACk(NonE) from new_cause\nodoo.exceptions.AccessDenIEd: Access DenIEd\n","message": "Access DenIEd","arguments": [
                "Access DenIEd"
            ],"context": {}
        }
    }
}

这适用于版本 11.0

我注意到 14.0 中的 http 标头以不同的方式包含 cookie:

cookie: TWISTED_SESSION=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2luZm8iOnsiYW5vbnltb3VzIjp0cnVlfSwiZXhwIjoxNjAzNjM0NDM5fQ.pJs2oOjQYOQrFnolafulNZ4Bg4OMJ_itRaZPEUoaLeE; frontend_lang=en_US; fileToken=dummy-because-API-expects-one; tz=Africa/Khartoum; session_ID=d36df662e749f368c32dcbecc07bf578dd57de8a

什么是TWISTED_SESSOIN?是它造成的问题吗?

@H_450_0@解决方法

我找到了解决方案,或者说是问题所在。

我在控制器方法中为 auth 设置了错误的值,它是:

@http.route('/route/',auth='auth',type='json')

并将其更改为:

@http.route('/route/',auth='user',type='json')

@H_674_79@
@H_674_79@

大佬总结

以上是大佬教程为你收集整理的Odoo 14 的邮递员身份验证全部内容,希望文章能够帮你解决Odoo 14 的邮递员身份验证所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:14