Preciso usar "HTTP Post" com o WebClient para postar alguns dados em um URL específico que tenho.
Agora, eu sei que isso pode ser feito com o WebRequest, mas por alguns motivos, eu quero usar o WebClient. Isso é possível? Nesse caso, alguém pode me mostrar algum exemplo ou me indicar a direção certa?
HttpRequestHeader.ContentType
membro da enumeração aqui assimweb.Headers[HttpRequestHeader.ContentType]
: pWebClient
herda deComponent
, que contém~Component() {Dispose(false);}
). O problema é que o coletor de lixo pode levar um tempo arbitrariamente longo para fazer isso, pois não considera os recursos não gerenciados ao tomar decisões de coleta. Recursos de alto valor devem ser limpos o mais rápido possível. Por exemplo, deixar em aberto um identificador de arquivo desnecessário pode impedir a exclusão ou gravação do arquivo por outro código.Existe um método interno chamado UploadValues que pode enviar HTTP POST (ou qualquer tipo de método HTTP) E lida com a construção do corpo da solicitação (concatenando parâmetros com "&" e caracteres de escape pela codificação de URL) no formato de dados de formulário apropriado:
fonte
Usando
WebClient.UploadString
ouWebClient.UploadData
você pode enviar dados para o servidor facilmente. Vou mostrar um exemplo usando UploadData, já que UploadString é usado da mesma maneira que DownloadString.mais: http://www.daveamenta.com/2008-05/c-webclient-usage/
fonte
fonte
fonte
Usar simple
client.UploadString(adress, content);
normalmente funciona bem, mas acho que deve ser lembrado que umWebException
será lançado se não for retornado um código de status HTTP bem-sucedido. Eu costumo lidar com isso assim para imprimir qualquer mensagem de exceção que o servidor remoto está retornando:fonte
O uso do webapiclient com modelo envia a solicitação de parâmetro serialize json.
PostModel.cs
WebApiClient.cs
Método de chamada comercial
fonte
Aqui está a resposta nítida:
fonte