#php #actionscript-3 #upload
#php #actionscript-3 #загрузка
Вопрос:
Приведенный ниже скрипт предназначен для загрузки изображения через PHP. Теперь я хотел бы предоставить пользователю возможность отменить загрузку. Как отменить запрос PHP после его отправки?
package
{
import com.adobe.images.PNGEncoder;
import flash.display.BitmapData;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.SecurityErrorEvent;
import flash.events.IOErrorEvent
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import flash.utils.ByteArray;
public class ServeruploadExample
{
private var loader:URLLoader;
private const API_KEY:String = "<api key>";
private const UPLOAD_URL:String = "http://example.com/upload-image.php";
public function ImgurExample() {
loader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, onCookieSent);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError);
loader.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
// Create a bitmapdata instance of a movieclip on the stage.
var mc:MovieClip;
var b:BitmapData = new BitmapData(mc.width, mc.height, true);
b.draw(mc);
var png:ByteArray = PNGEncoder.encode(b);
var vars:String = "?key=" API_KEY "amp;name=nameamp;title=title";
var request:URLRequest = new URLRequest(UPLOAD_URL vars);
request.contentType = "application/octet-stream";
request.method = URLRequestMethod.POST;
request.data = png;
loader.load(request);
}
// privates
}
}
Ответ №1:
Просто вызовите метод .close() класса URLLoader, который завершит операцию загрузки.
В вашем примере настройте кнопку отмены и:
public function cancel_upload_click_handler(e:MouseEvent):void
{
loader.close();
}