Adicionar dados de cabeçalhos e postar na solicitação RESTfull / HTTP em C #
Estou tendo problemas com o envio de solicitação POST em c # e parece que eu entendi errado alguns princípios básicos de HTTP. Então, basicamente, estou implementando o serviço RESTfullclient, que funciona da seguinte maneira:
Faça a solicitação POST com nome de usuário / senha e obtenha o tokenUse esse token no cabeçalho (Autorização: TOKEN) enquanto faz outras solicitações GET / POST / PUTEu usoWebRequest
para fazer solicitações GET (com cabeçalho de autorização) e está funcionando. Mas quando eu uso o código a seguir para fazer solicitações de PUT, o serviço está retornando a mensagem "A autenticação falhou - não está logado":
String url = String.Format("{0}/{1}", AN_SERVER, app);
WebRequest theRequest = WebRequest.Create(url);
theRequest.Method = "POST";
theRequest.ContentType = "text/x-json";
theRequest.ContentLength = json.Length;
Stream requestStream = theRequest.GetRequestStream();
requestStream.Write(Encoding.ASCII.GetBytes(json), 0, json.Length);
requestStream.Close();
theRequest.Headers.Add("Authorization", authToken);
HttpWebResponse response = (HttpWebResponse)theRequest.GetResponse();
Devo estar cometendo um pequeno erro (pelo menos espero) ao enviar uma solicitação POST. Então, o que estou fazendo de errado?
Obrigado