POST-запрос недействителен - PullRequest
0 голосов
/ 31 января 2019

У меня есть пакетный запрос на отправку в API через MATLAB.Я не знаю, как правильно структурировать тело моего запроса.Ни MATLAB, ни документация API не предоставляют мне достаточно подробной помощи.

Запрос выглядит так:

{
  "requests": [
{
  "id": "sample string 1",
  "seriesType": "sample string 2",
  "startDate": 1548882319358,
  "endDate": 1548882319358,
  "currency": "sample string 5",
  "sdkVersion": "sample string 6"
},
{
  "id": "sample string 1",
  "seriesType": "sample string 2",
  "startDate": 1548882319358,
  "endDate": 1548882319358,
  "currency": "sample string 5",
  "sdkVersion": "sample string 6"
},
{
  "id": "sample string 1",
  "seriesType": "sample string 2",
  "startDate": 1548882319358,
  "endDate": 1548882319358,
  "currency": "sample string 5",
  "sdkVersion": "sample string 6"
}
],
  "sdkVersion": "sample string 1"
 } 

Мой текущий код выглядит так:

M = length(entities);
K = length(series);
maxAttempt = 20;

method = matlab.net.http.RequestMethod.POST;
uri = strcat([api.baseURI 'Entities/SeriesBatch']);
body = matlab.net.http.MessageBody;
body.Data.requests = cell(M*K,1);
n = 0;
for ii = 1:M
    for jj = 1:K
        n = n + 1;
        body.Data.requests{n} = struct;
        body.Data.requests{n}.id = entities{ii};
        body.Data.requests{n}.seriesType = series{jj};
        body.Data.requests{n}.startDate = startDate;
        body.Data.requests{n}.endDate = endDate;

    end
end

N = 0;
response.Completed = true;

while and(response.Completed, N < maxAttempt)
    clear response
    header = myAPIHeader(api);
    request = matlab.net.http.RequestMessage(method,header,body);
    response = send(request,uri);
    N = N + 1;
end

Однако я получаю неверное сообщение с запросом.Это был мой лучший гость при структурировании этого большого пакетного запроса (M = 1133, K = 5).

...