Je suis sans succès en train de télécharger par programme une image sur ezphotoshare.com avec C#. Ils utilisent Chevereto v1 comme base. Chaque fois que je tente de télécharger, je reçois "Le serveur distant a renvoyé une erreur: (400) Mauvaise demande.". Voici quelques-unes des choses que j'ai essayé:C# télécharger l'image locale à Chevereto API v1 ezphotoshare.com
int limit = 32766;
StringBuilder sb = new StringBuilder();
int loops = img.Length/limit;
for (int i = 0; i <= loops; i++)
{
if (i < loops)
{
sb.Append(Uri.EscapeDataString(img.Substring(limit * i, limit)));
}
else
{
sb.Append(Uri.EscapeDataString(img.Substring(limit * i)));
}
}
string url = "http://ezphotoshare.com/api/1/upload/?key=######&source=" + sb +
"&format=json";
var uploadImageRequest = (HttpWebRequest)WebRequest.Create(url);
uploadImageRequest.Method = "POST";
var response = (HttpWebResponse)uploadImageRequest.GetResponse();
Voici quelque chose d'autre, j'ai essayé:
string img = ImageReturn(@"C:\avatar63New3.jpg");
using (WebClient client = new WebClient())
{
byte[] response3 = client.UploadValues("http://ezphotoshare.com/api/1/", new NameValueCollection()
{
{ "key", "######" },{"format","txt"},{"action","upload"},{"source",img}
});
Console.WriteLine(XDocument.Load(new MemoryStream(response3)));
}
private static string ImageReturn(string imageLocation)
{
using (Image image = Image.FromFile(imageLocation))
{
using (MemoryStream m = new MemoryStream())
{
//image.Save(m, image.RawFormat);
image.Save(m, ImageFormat.Jpeg);
byte[] imageBytes = m.ToArray();
string base64String = Convert.ToBase64String(imageBytes);
return base64String;
}
}
}
J'ai essayé de nombreuses variantes différentes du code ci-dessus avec pas de chance. Me pointer dans la bonne direction serait grandement apprécié. Merci.
Merci, mais ce projet utilise le cadre 4.5 et je ne semble pas être en mesure d'utiliser la nouvelle façon sans changer le cadre. D'autres suggestions? – Roro
Je comprends votre problème, avez-vous déjà testé l'API, en utilisant un facteur par exemple? Si oui, a été réussi? – Vimaciel