En essayant de télécharger une image à partir d'un site web spécifique.
En fait, mon code est en cours d'exécution dans la production pendant des mois, mais ce n'est pas en mesure de télécharger imagens de ce site spécifiqueC# Code pour télécharger une image à partir d'un CDN "pas si facile"
L'URL de l'image que je dois télécharger est celui-ci: (par exemple) http://static7.kabum.com.br/produtos/fotos/64297/64297_index_g.jpg
Les codes que j'essayées jusqu'à présent:
Méthode 1 -> (échec)
string url = "http://static7.kabum.com.br/produtos/fotos/64297/64297_index_g.jpg";
var request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = (timeout == 0 ? 30 : timeout) * 1000;
request.KeepAlive = false;
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36";
var response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
const int BUFFER_SIZE = 16 * 1024;
var buffer = new byte[BUFFER_SIZE];
// if the remote file was found, download it
using (Stream inputStream = response.GetResponseStream())
using (Stream outputStream = File.Create(fileName, BUFFER_SIZE))
{
int bytesRead;
do
{
bytesRead = inputStream.Read(buffer, 0, buffer.Length);
outputStream.Write(buffer, 0, bytesRead);
} while (bytesRead != 0);
}
}
Méthode 2 -> (également échoué)
[..]
using(Image webImage = Image.FromStream(response.GetResponseStream()))
{
webImage.Save(fileName);
}
[..]
Les deux méthodes échouent avec les éléments suivants exception
« Paramètre non valide » exception chargement System.Drawing.Image
StackTrace = "em System.Drawing.Image.FromStream (Flux de flux, Booléen useEmbeddedColorManagement, Boolean validateImageData) dans System.Drawing.Image.FromStream (Flux de flux) dans MonitorLib.Helper.RequestPageHelper.RequestDowloadPage (proxy booléenne, Strin ...
Je suppose que les données d'image est incomplète ou compactée, mais l'URL fonctionne très bien sur un navigateur
toute pensée? merci beaucoup amis
Cela a fonctionné, merci m8 – user5199217