Ошибка с Flex HTTPService и Django, даже если POST успешен - PullRequest
0 голосов
/ 06 ноября 2011

(Это первый раз, когда я сделал это на самом деле.)

  <mx:HTTPService id="post_update" method="POST" result="{Dumper.info('bye')}"/>

Приведенный выше обработчик результатов предназначен только для целей отладки, но никогда не срабатывает, несмотря на то, что я загружаю через POST ...

          post_update.url = getPath(parentDocument.url)+"update";                               
          post_update.send(new_sel);       

... получено и успешно обработано моим представлением Django:

def wc_post(request) :    
    request.session['wc'] = request.POST      
    return http.HttpResponse("<ok/>", mimetype="text/xml")

Что касается того, что я посылаю обратно из Джанго, я следую инструкциям здесь:

Отправка изображений с Flex на сервер

Я просто не хочу, чтобы это генерировало ошибку на стороне Flex, учитывая, что Django фактически получает и обрабатывает данные. Любая помощь приветствуется. Не могу вспомнить текст ошибки в Flex на данный момент.

ОБНОВЛЕНИЕ: new_sel (то, что я публикую из Flex) - это просто объект Flex с различными текстовыми полями.

ОБНОВЛЕНИЕ: различные сообщения об ошибках из event.message (в обработчике ошибок):

faultCode = "Server.Error.Request"
faultString = "Ошибка HTTP-запроса"; DSStatusCode = 500; errorID = 2032; type = "ioError"

Ответы [ 2 ]

0 голосов
/ 06 ноября 2011

Просто пришлось вернуть HttpResponse("ok") Не понравилось, что его отправили в формате xml по какой-то причине.Так много шума ни о чем, я думаю.

0 голосов
/ 06 ноября 2011

Это скорее цепляет за соломинку, чем за ответы, но нужно ли мне отправлять заголовок определенного типа обратно из Django - по умолчанию, отправляемое Django, содержит код состояния успеха 200, и ответ, который я отправлял "<ok/>" с mime type "text/xml" точно следовал примеру, который я предоставил из этого другого источника.

А также URL-адрес, на который я отправляю POST, равен localhost:8000/wr_view1/wr_webcube/update, и ранее я успешно выполнил GET для localhost:8000/wr_view1/wr_webcube/webcube.xml, и, несмотря на расширение .xml в случае GET, он все еще обрабатывался Django (и без ошибок во Flex). В случае этого POST, опять же, данные фактически успешно отправляются и обрабатываются Django, но Flex возвращает ошибку 2032, которая, как я выяснил, может означать множество разных вещей, включая проблемы между доменами, но не понимаю, как это дело здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...