Je suis en train d'imiter le code PHP suivant en C#Quelle est l'équivilence .NET C# de HTTP_RAW_POST_DATA?
<?php
if (isset ($GLOBALS["HTTP_RAW_POST_DATA"])) {
// get bytearray
$im = $GLOBALS["HTTP_RAW_POST_DATA"];
// add headers for download dialog-box
header('Content-Type: image/jpeg');
header("Content-Disposition: attachment; filename=".$_GET['name']);
echo $im;
} else echo 'An error occured.';
?>
Jusqu'à présent, j'ai:
public ActionResult GetPostedImage(string name)
{
var res = Response;
res.Clear();
res.Cache.SetCacheability(HttpCacheability.NoCache);
res.ContentType = "image/jpeg";
res.AppendHeader("Content-Disposition", "filename=\"" + name + "\"");
res.Write(Request.InputStream);
return View();
}
Le problème est que le Request.InputStream ne contient pas les données d'images brutes affichées parmi les options suivantes flash Actionscript:
var jpgSource:BitmapData = new BitmapData(mc_avatar.width, mc_avatar.height);
jpgSource.draw(mc_avatar);
trace(jpgSource);
var jpgEncoder:JPGEncoder = new JPGEncoder(85);
var jpgStream = jpgEncoder.encode(jpgSource);
var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
var jpgURLRequest:URLRequest = new URLRequest("/cms3/getpostedimage?name=bloke.jpg");
jpgURLRequest.requestHeaders.push(header);
jpgURLRequest.method = URLRequestMethod.POST;
jpgURLRequest.data = jpgStream;
navigateToURL(jpgURLRequest, "_self");
Je suis sûr que je manque quelque chose de vraiment de base, de sorte que tous les pointeurs seraient appréciés.
euh ... question stupide, mais ce qui est exactement ce censé accomplir? Pourquoi envoyez-vous un fichier à l'utilisateur qu'ils vous ont envoyé? – Powerlord