Как отправить HTTP-запрос PUT во Flex - PullRequest
1 голос
/ 04 сентября 2010

Я хочу отправить HTTP-запрос PUT на один URL-адрес, чтобы обновить это содержимое XML с помощью API.

URL-адрес выглядит следующим образом: https://domainname.com/someurls/id.xml

Я хочу обновить этот контент.

Но когда я отправляю этот запрос PUT, я видел, что в Network Monitor of Flex 4 он выполняется как запрос POST в этой сети, в то время как я устанавливаю метод как PUT в переменной HTTPService.

Итак, я получаю ошибку.Так есть ли способ отправить запрос PUT в Интернете?Или есть специальный заголовок для установки метода PUT?Я пробовал заголовок метода, но он не работает ....

Пожалуйста, помогите мне .....

Ответы [ 3 ]

11 голосов
/ 05 сентября 2010

Я нашел решение отправить службу размещения и удаления с помощью HTTPSerivce в flex.

Вам просто нужно отправить еще один заголовок с методом обслуживания POST.

Вы должны отправитьданные в методе POST и присоедините еще один заголовок X-HTTP-Method-Override и значение в виде PUT или DELETE.

Ваша служба будет отправлена ​​как PUT или DELETE.

Спасибо......

2 голосов
/ 29 сентября 2012

Хотя ответ Mitul работал и на меня, я смог заставить работать запросы PUT и DELETE, выполнив следующее.

var urlLoader:URLLoader = new URLLoader();
            var urlString:String = "https://www.google.com/arbitraryUrl.json";
            var urlRequest:URLRequest = new URLRequest(urlString);
            urlRequest.method = URLRequestMethod.POST;

            var variables:URLVariables = new URLVariables();
            variables._method = "DELETE";
            urlRequest.data = variables;

            urlLoader.load(urlRequest); 

То же самое на самом деле. Другой способ сделать это. Надеюсь, это поможет некоторым людям.

1 голос
/ 04 сентября 2010

Flex не поддерживает PUT из-за базового флэш-плеера. См. эту статью об ограничениях.

Здесь есть обходной путь . Однако, если сервер и клиент находятся под вашим контролем, я бы предложил использовать только GET и POST. Flex просто не предназначен для истинных клиентов RESTful. (Например сделать пост с параметром put=true)

...