Я пытаюсь запросить метод API на том же сервере, на котором размещен SWF-файл. Я получаю ошибку безопасности 2048. Это происходит независимо от того, использую ли я POST или GET, и если оставить данные запроса пустыми, это не улучшит ситуацию. В обоих случаях ничего не отправляется, и я получаю SecurityErrorEvent, чтобы посмотреть на него. Все работает плавно из IDE.
Апплет не пытается загрузить файл crossdomain.xml, поэтому он явно не рассматривает запрос как междоменный и не должен быть задействован в других доменах. Загрузка изображений из swfRoot работает нормально.
Есть ли что-нибудь еще, что могло вызвать эту ошибку? Кроме того, могу ли я узнать больше информации о том, что именно происходит? Отслеживание toString ErrorEvent дает мне только «Ошибка 2048» - в других вопросах я видел ссылку на сообщения об этой ошибке, которые гласят: «не удается загрузить данные из XXX», но я не могу получить одно из них использую Flash CS5).
Это код, который не работает:
var url:String = apiRoot + 'students/'+this.student.id+"/?authorization="+this.student.id+":"+authToken; //this all seems to work fine
var request:URLRequest = new URLRequest(url);
var loader:URLLoader = new URLLoader();
var toSend:Object = foo
request.data = JSON.encode(toSend)
request.method = URLRequestMethod.POST; //Post is the one the server is expecting, but I get identical issues with GET
loader.load(request);
(теперь исправлено - см. Ответ ниже)