viniciussanchez/RESTRequest4Delphi

Chave da API com %

Closed this issue · 10 comments

Vinícus,
Não consigo validar a chave da API que estou tentando consumir, provavelmente por a mesma conter o caracter '%'.
Não tenho a opção do [DonotEncode] como tenho no RestClient do Delphi.

TRequest.New.BaseURL('URL')
.AddParam('api_key', 'qyqt%2bcK6abcRxxjbJHAImdf%3d%3d', pkGETorPOST)
.ContentType('application/json')
.AddBody('{"name":"Vinicius"}')
.Post;

Pode ser isso?
Grato.
P.S. : No Rest Debugger funciona, colocando a opção do DoNotEncode.

Boa tarde...
poDoNotEncode é no Header. Parâmetros não tem essa opção...
Esse api_key não é um header?

Tentei também sem sucesso.
.AddParam(LParams[0], LParams[1], pkGETorPOST, [poDoNotEncode])
ou
.AddHeader(LParams[0], LParams[1], [poDoNotEncode])

Posso te enviar o projeto teste?

Anexa aqui o exemplo... mas como eu falei... como está a documentação dessa api? como fez no postman?

A imagem não veio.. e o link está sem permissão de acesso.

Vinícius, desculpa. Conseguiu reproduzir?

A chave já esta encode, já tentou informar ela sem "qyqt+cK6abcRxxjbJHAImdf==" ?

Fiz assim e aparentemente teve sucesso:

TRequest.New.BaseURL('https://api.sieg.com/api/Certificado/Registrar')
  .AddParam('api_key', 'qyqt+cK6abcRxxjbJHAImdf==', [poDoNotEncode])
  .ContentType('application/json')
  .AddBody('{"name": "Vinicius"}')
  .Post;