Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
1 Ответить
5086 Представления

What am i doing wrongly with api code?

Every thing works well with Postman api test but I keep having session expired each time i called get controller function on Android App.

I always get a valid session id when authenticating user on ..... https://127.0.0.1/web/session/authenticate

I need guide please.

### My Code Below:###

from odoo import http

from odoo.http import request


class FieldWorker(http.Controller):
# Update Controller

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

def update_worker(self, **rec):

    if request.jsonrequest:

        if rec['id']:

            fieldworker = request.env['field.workers'].search([('id', '=', rec['id'])])

            if fieldworker:

                fieldworker.write(rec)

            args = {'success': True, 'message': 'Fieldworker Updated'}

    return args


# Get Controller

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

def get_fieldworkers(self):

    fieldworker_rec = request.env['field.workers'].search([])

    fieldworkers = []

        for rec in fieldworker_rec:

            vals = {

                'id': rec.id,

                'name': rec.name,

                'community': rec.community,

                'latitudes': rec.latitudes,

                'longitudes': rec.longitudes,

                'team_ids': rec.team_ids,

            }

            fieldworkers.append(vals)

        data = {'status': 200, 'response': fieldworkers, 'message': 'All Fieldworkers Fetched'}               return data

Аватар
Отменить

Do you've got a proxy, like nginx?

Do you've got more than one database? and do you filter the database somehow?

Автор

@ Blanco,

1. Yes, I use nginx

2. Yes, I did filter the databases like dbfilter = ^%d$

Лучший ответ

You need to pass that session id in the header of each request after authentication. I suggest you to open your log and when you attemp to get or post something your log will tell you what is missing

Аватар
Отменить
Автор

@ Abdullah,

I did passed the session id to each request header on the Android App but always get session expired

Related Posts Ответы Просмотры Активность
5
мая 25
9444
0
июл. 22
5613
0
июл. 21
7296
3
авг. 19
6202
3
февр. 24
14341