当前位置: 首页 > news >正文

织梦城市门户网站模板找做牙工作上哪个网站

织梦城市门户网站模板,找做牙工作上哪个网站,制作动漫的软件,wordpress跳转安装odoo 17 后端路由接口认证自定义 在接口中, 我们都知道有3中常用的认证方式 user 用户级认证public 访问时赋予公共用户none 不做任何用户级处理 一般不做数据库重要数据校验, 仅做访问处理 以上是源码提供的三种方式 接下来我们自定义一个认证方式 首先找到的这认证是在…odoo 17 后端路由接口认证自定义 在接口中, 我们都知道有3中常用的认证方式 user 用户级认证public 访问时赋予公共用户none 不做任何用户级处理 一般不做数据库重要数据校验, 仅做访问处理 以上是源码提供的三种方式 接下来我们自定义一个认证方式 首先找到的这认证是在 ir.http 模型内完成的, 认真源码如下 classmethod def _authenticate(cls, endpoint):auth none if http.is_cors_preflight(request, endpoint) else endpoint.routing[auth]try:if request.session.uid is not None:if not security.check_session(request.session, request.env):request.session.logout(keep_dbTrue)request.env api.Environment(request.env.cr, None, request.session.context)getattr(cls, f_auth_method_{auth})()except (AccessDenied, http.SessionExpiredException, werkzeug.exceptions.HTTPException):raiseexcept Exception:_logger.info(Exception during request Authentication., exc_infoTrue)raise AccessDenied() 源码中可以看到 getattr(cls, f_auth_method_{auth})() 这里匹配并执行, 很明显可以看到调用了这个类的方法 _auth_method_user, _auth_method_public, _auth_method_none 往后继续操作 classmethod def _get_public_users(cls):return [request.env[ir.model.data]._xmlid_to_res_model_res_id(base.public_user)[1]]classmethod def _auth_method_user(cls):if request.env.uid in [None] cls._get_public_users():raise http.SessionExpiredException(Session expired)classmethod def _auth_method_none(cls):request.env api.Environment(request.env.cr, None, request.env.context) 这时候我们只需继承 ir.http 模型进行操作, 下面是例子 from odoo import models from odoo.http import requestclass IrHttp(models.AbstractModel):_inherit ir.httpclassmethoddef _auth_method_wechat(cls):user request.env.ref(xxx.user_wxapp_user_manager) # 给后端用户作为认证request.uid user.idrequest.user user 这里以通过添加微信认证wechat为例, 将模块安装后,系统会增加一个微信认证功能, 更多操作请在方法中编写逻辑 main.py 文件 普通接口访问如下 http.route(/demo/auth/reload, typehttp, authuser, methods[GET], cors*, csrfFalse) def auth_reload(self):认证接口, 需要通过用户级认证return Response(json.dumps({}), status200, content_typeapplication/json) 自定义认证访问, 只需修改 authwechat 即可 http.route(/demo/auth/reload, typehttp, authwechat, methods[GET], cors*, csrfFalse) def auth_reload(self):自定义认证接口, 通过 _auth_method_wechat 方法处理用户需求return Response(json.dumps({}), status200, content_typeapplication/json) 最后是模块的目录结构 └─demo│ __init__.py│ __manifest__.py│├─controllers│ main.py│ __init__.py│├─models│ ir_http.py│ __init__.py注意, 别忘了将 controllers 和 models 导出到包外
http://www.tj-hxxt.cn/news/138437.html

相关文章:

  • 绍兴市科信建设工程检测中心网站胶南网站建设哪家好
  • 一级建造师找工作网站教育网站制作要多少钱
  • 精品课程网站开发关键技术九宫格网站模板
  • 做网站的公司成都做seo必须有网站吗
  • 旅游手机网站建设迁移wordpress到阿里云
  • 广西建设工程协会网站查询系统妇科医院免费的咨询
  • 三网合一 网站建设加查网站建设
  • 禁止指定ip访问网站在线crm厂商
  • 帝国网站管理系统 数据库网站建设费属于广告费
  • 网站内容做淘宝店铺链接影响排名吗淄博免费网站建设哪家好
  • 做 视频在线观看网站百度榜
  • 百度注册网站怎么弄免费建材网站模板
  • 集客营销软件官方网站网站怎么做图片动态图片不显示了
  • 锦州网站建设报价wordpress橱窗插件
  • 没有网站如何做天天联盟wordpress 给标签加id
  • 贵州省住房城乡建设厅网站网站空间域名购买
  • 湖南网站建站系统平台内部网站建设教程
  • 培训机构网站the7企业中英文wordpress模板
  • 咸阳建设网站wordpress页面怎么加入php网页
  • 怎么编辑网站做网站运营好还是SEO好
  • 比较网站建设长春市制作网站费用
  • 保洁公司在哪个网站做推广比较好河北网站推广优化
  • 郑州哪里做网站汉狮连云港网站定制开发
  • 杭州做网站怎么收费炫酷的动画网站
  • 做付费软件网站怎么做长春最新通知
  • 网站名称怎么起好听wordpress 插件激活
  • 来安网站建设网站建设标准
  • 服装企业网站建设的目的国外优质设计网站
  • 织梦网站广告win7 iis7 添加网站
  • 泰安医院网站建设wordpress页面添加新闻