Я пытаюсь вызвать API для публикации zip-файла, используя Delphi TRestRequest
-компоненты. Если я использую Почтальон, я получаю ожидаемый результат. Однако, если я использую TRestRequest
, я получаю 401 Unauthorized
ошибку.
В Почтальоне мой запрос выглядит так:
POST https://docs.ixor.be/api/upload
Content-Type: multipart / form-data
Access-Token:
form-data:
данные: (файл) documents.zip
тип: документы
ссылка: testref
В Delphi мой код выглядит так
SendFile := TMemoryStream.Create;
SendFile.LoadFromFile(bestand);
SendFile.Position := 0;
RESTClientIxor.BaseURL := 'https://docs.ixor.be/api/upload';
RESTRequestIxor.Params.Clear;
RESTRequestIxor.Params.AddItem('Access-token', '<token>', pkHTTPHEADER, [], ctNone);
RESTRequestIxor.Params.AddItem('Content-type','multipart/form-data', pkHTTPHEADER, [], ctNone);
RESTRequestIxor.Params.AddItem('reference', QFactuurproacc.AsString, pkREQUESTBODY, [], ctMULTIPART_FORM_DATA);
RESTRequestIxor.Params.AddItem('type', 'documents', pkREQUESTBODY, [],ctMULTIPART_FORM_DATA);
RESTRequestIxor.Params.AddItem('data', SendFile, pkFILE, [], ctMULTIPART_FORM_DATA);
RestRequestIxor.Method := rmPOST;
RESTRequestIxor.Execute;
Кто-нибудь знает, что я делаю неправильно?