Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
5346 Zobrazení

I am using Trello webhooks to synchronize Odoo project module, In order to create a webhook, I have to first validate the controller in Odoo and if the controller successfully returned then Trello will start sending data to the same controller which I have used for verification but the issue is during controller verification, Trello called the controller using HTTP type and after validation they send data to the same controller called by JSON type, which I am not sure how to achieve.

So basically during validation, it should be the controller.

@http.route('/trello/webhook',type="http", auth='public')
def trelloWebhook(self, **kwagrs):
pass

and after verification, It should be like this

@http.route('/trello/webhook',type="json", auth='public') 
def trelloWebhook(self, **kwagrs):
pass
How to handle same controller for two different types.

Avatar
Zrušit
Nejlepší odpověď

You can create two controllers like this to solve.

    @http.route('/trello', type='http', auth="none", methods=['GET'], csrf=False)
    def trello_webhook_test(self, **kwargs):
        res = request.httprequest
        if res.method == 'HEAD':
            return ''
    
    @http.route('/trello', type='json', auth="none", methods=['POST'], csrf=False)
    def trello_webhook_response(self, **kwargs):
        res = request.jsonrequest and request.jsonrequest or {}
        # your code...
          
Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
1
srp 21
5674
0
úno 21
2392
0
čvc 19
216
2
pro 18
4083
5
lis 18
7612