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
1855 Zobrazení

Hi, I believe this to be a different issue to my other posts however it does involve my beloved webhooks. Im still trying to get them working and understand them.

So, what I have is:

1) postman send:

{ "id": 1, "name": "fred"}

----------------------------------------

2) The code to execute:

try:

    data = request.get_json_data()

except:

    data = str(request.get_http_params())


id = data[0]

message = data[1]

note = id,message


env['mail.message'].create({

    'author_id': 2,

    'model': 'project.task',

    'res_id': 1,

    'body': note,

    'message_type': 'comment',

    'subtype_id': 2,

})

----------------------------------------

3) The output in "todo" chatter (project.task)

('{', '}')

----------------------------------------

After testing, I found that the try was failing and therefore the except was executing. 

No matter how I sliced "data" there were only 2 elements data[0] was "{" and data[1] was "}". Anything else through and exception. 

So, it appears to me that, putting the fact that the request.get_json_data() did not run, why would the request.get_http_params() not contain the parameters pass in?

Can anyone enighten me on what is going on here?

Once again, thank you so, so much for reading and help.

Avatar
Zrušit
Nejlepší odpověď

Hi,
Adjust below variables as follows:

id = data[0]

message = data[1]

Change the above to

id = payload['id']

message = payload['message]

Thanks

Avatar
Zrušit
Autor

Wow, so all those vids I've been watching which tell us to use the request.get_json_data() are not that useful if all the data is already in payload.
Yet again, you are the GOAT Niyas.

Related Posts Odpovědi Zobrazení Aktivita
0
led 25
923
1
říj 24
3032
2
bře 25
1947