Como posso evitar que ServerXMLHTTP de seguir automaticamente redirecionamentos (HTTP 303 Ver Outras respostas)?

StackOverflow https://stackoverflow.com/questions/161343

Pergunta

Eu estou usando ServerXMLHTTP para executar um HTTP POST. A resposta retornado é um redirecionamento (especificamente 303 See Other). ServerXMLHTTP está seguindo automaticamente esse redirecionamento, mas isso está causando uma falha de autenticação como não é propagar o cabeçalho de autorização da solicitação original.

Existe uma maneira que eu posso evitar que o redirecionamento automático (ou, alternativamente, garantir que o cabeçalho de autorização é reenviado)?

Foi útil?

Solução

ServerXMLHTTP não suporta intercepção de redirecionamentos (veja Microsoft Knowledge Base artigo 308607 ). No entanto WinHTTP pode ser usado em seu lugar e este não contém um configurável 'permitir redirecionamentos' opção.

Como desativar redirecionamentos WinHTTP em VBA:

webClient.Option(6) = False

No contexto:

Set webClient = CreateObject("WinHttp.WinHttpRequest.5.1")
webClient.Option(6) = False 
webClient.Open "POST", "http://example.com", False
webClient.send ("")
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top