看過很多類似,但沒有解決辦法:我試圖做一些事情(我覺得)很簡單,AS3 POST PNG到PHP
採取從畫廊或相機拍照 - 和POST這一個網址。沒有保存/返回到應用程序。 PNG僅供顯示中的網頁使用,並且用戶向前移動。
public function postPicture():void {
PNGEncoder2.level = CompressionLevel.FAST;
var encoder : PNGEncoder2 = PNGEncoder2.encodeAsync(_bitmapData);
encoder.targetFPS = 12;
encoder.addEventListener(Event.COMPLETE, function (e):void {
var png : ByteArray = encoder.png;
var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
var jpgURLRequest:URLRequest = new URLRequest("https://myurl.com/mypage");
jpgURLRequest.requestHeaders.push(header);
jpgURLRequest.method = URLRequestMethod.POST;
jpgURLRequest.data = png;
navigateToURL(jpgURLRequest, "_blank");
});
}
另外要注意,我們在URL的末尾得到一些奇怪的字符:C9%90NG
的直覺是,我解碼,然後不發送,即這些字符之前正確編碼一些原始圖像信息的一部分。
當我測試從另一個圖像的鉻POST擴展,服務器端的東西工作正常,所以猜測與AS3的問題。
- 基本上它的工作原理是當我使用chrome瀏覽> my.png並將其張貼在頁面上時。我是否錯過了AS3 png編碼器?即如何將該bmp數據轉換爲「文件」而不是字節數組。
三江源
這可能有幫助:http://www.zedia.net/2010/sending-bytearray-image-and-variables-to-server-side-script-as-post-data-in-as3/ 請注意,內容類型設置爲'multipart/form-data' – Marcela