Goal
With Nodejs support , the file should be streamed via the body
Section -1
Accept a HTTP POST request which will contain the following JSON in its body:
{ event, entity, actor, machines, tests, options }
I am interested in the event (‘completed’) and entity (‘job’).
Section -2
Then I'II call back the HTTP domain name mentioned in the actor with the following call:
URL = actor + /api/logs/:id
Where id will be options.id that received in the previous callback.
This will give back the JSON of all the log files generated for that job.
Section -3
I can then generate the full path for any log that I want:
URL = actor + logs/:id/:path
I can then process the log and create final log.
Section -4
Once I am are ready,
I should do a HTTP post request to:
URL = actor + logs + :id + :name

 Respuesta aceptada

Kojiro Saito
Kojiro Saito el 29 de Jun. de 2021

1 voto

I'm not sure which parameters should you post to NodeJS, but about Section 1 and 2, it might be the following.
%% Section 1
url = 'http://localhost:3000/postTest'; % To be replaced by your actual endpoint
data = struct('data', 1); % To be replaced by your actual json data
res = webwrite(url, data);
%% Section 2
url2 = "http://localhost:3000/" + res.actor + "/api/logs/:" + res.options.id;
% To be replaced by your actual endpoint
data2 = struct('data', 2); % To be replaced by your actual json data
res2 = webwrite(url2, data2); % If it is GET request, it would be res2 = webread(url2);

7 comentarios

Life is Wonderful
Life is Wonderful el 29 de Jun. de 2021
Editada: Life is Wonderful el 29 de Jun. de 2021
Thanks a lot. Make lot of sense with pseudo code .
I was wondoring what could be the url for
URL = actor + logs/:id/:path
I am not sure here [Two structure element one after another]
url3 = "http://localhost:3000/" + res.actor + "/api/logs/:/:" + res.options.id.path;
Thanks
Kojiro Saito
Kojiro Saito el 29 de Jun. de 2021
How about this?
url3 = "http://localhost:3000/" + res.actor + "/api/logs/:" + res.options.id + "/:" + res.options.id.path;
I could imagine something like below,
although i am not sure if the interpretation/which perspective is the right one
URL = actor + logs/:id/:path % Requirement
url3 = [res.actor] + [res.options.id] + [res.options.id.path]; % Your proposal
url3 = [res.actor] + [res.options.id.path]; % My proposal
Kojiro Saito
Kojiro Saito el 30 de Jun. de 2021
I am not sure which one is correct. It's not a matter of coding, but a matter of API implementation of server side. You need to refer your NodeJs programs or ask someone who knows the API in detail.
Life is Wonderful
Life is Wonderful el 30 de Jun. de 2021
Thanks !
Can you please help me and I am not clear on the code
Accept a HTTP POST request which will contain the following JSON in its body
should have HTTP requestmethod POST or GET to get the JSON data ?
Kojiro Saito
Kojiro Saito el 30 de Jun. de 2021
Both HTTP GET and POST receices JSON data from server. You can try by using webread (HTTP GET) and webwrite (HTTP POST).
Life is Wonderful
Life is Wonderful el 2 de Jul. de 2021
Thank you! In case I need further information please help me

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Versión

R2021a

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by