Erro ao Enviar WS com Função HTTPPost

Boa Tarde,

Estou utilizando a função HttpPost para fazer uma requisição para o endereço "http://app.smartdocx.com.br/service/api/integracao/download?$filter=DTPRC gt Datetime'2020-09-22T00:00:00'", porém é apresentado o erro:

Bad Request

HTTP Error 400. The request is badly formed.

Reparei que esse erro só da quando tem espaço na URL que estou enviando. Pelo postman a requisição é completada.

Sabe se tem alguma forma de contornar esse erro?

[edit] Trecho do código:

``` _cTimeZone := FWTimeStamp(3,( Date() - GetMV("GR_SDXDIA",,0) ),"00:00:00")

//Se o parametro de dias estiver desativado, traz todo o histórico do SmartDocX If GetMV("GR_SDXDIA",,0) > 0 _cFilter := "?$filter=DTPRC gt Datetime'" + _cTimeZone + "'" EndIf

cPostParms := "grant_type=password" cPostParms += "&username=" + GetMV("GR_SDXUSR",,"") cPostParms += "&password=" + GetMV("GR_SDXPSW",,"")

//Efetua o POST na API cRetPost := HTTPPost(_cWsUrl + "/token", /cGetParms/, cPostParms, /nTimeOut/, aHeadStr, @cHeaderGet)```

Grato.

Envie um trecho do seu código para facilitar a analise. Vale mencionar também que a classe FWREST() funciona muito bem para requisições do tipo que você pretende fazer, as vezes seria bom considerar uma mudança para ela.

Boa tarde Marcos, adicionei o trecho do código no tópico

Rubens, onde voce esta utilizando o _cFilter? Nao deveria estar concatenando ao cPostParms? Alem disso, os parametros de usuario e senha sao enviados nos headers ou na URL?

Boa tarde Rubens!

Consegue verificar se a URL fornecida esta correta? Me parece que há um 'gt' que deveria experssar um 'Greater Than' em html, porém esta faltando o '&' antes...

Caso a URL esteja correta e seja dessa forma mesmo, verifique tentar trocar os espaços na URL por '%20' ou por '+'.

boa tarde, está sim, validei ela pelo postman

Funcionou com o ‘+’…muito obrigado