Web Controller en Odoo

De Jose Castillo Aliaga
Ir a la navegación Ir a la búsqueda

CORS en Odoo

Odoo no permet peticions Ajax que no vinguen del mateix origen que ell. Això ho podem canviar en cada route amb cors='*'

Si volem permetre CORS en tot odoo, el millor és instal·lar Ngingx, configurar-lo per a permetre CORS i fer que actue com a proxy d'Odoo.

Autenticació

En el directori d'addons d'Odoo, en el mòdul web/controller, trobem aquest codi:

    @http.route('/web/session/authenticate', type='json', auth="none")
    def authenticate(self, db, login, password, base_location=None):
        request.session.authenticate(db, login, password)
        return request.env['ir.http'].session_info()

Eixa és la ruta d'autentificació. Com es veu, accepta un json amb la base de dades, login, password...

Si vulguem fer una aplicació que connecte amb Odoo via web, deguem autenticar-nos. Anem a analitzar el que demana. Per a fer-ho utilitzarem el programa Postman

En aquest gif es veu el que hem de ficar en el Postman per a veure si funciona el API:

Postmanauthenticationodoo.gif