Могу ли я использовать "."в именах параметров POST, сгенерированных Flash? - PullRequest
0 голосов
/ 08 марта 2012

Я пытаюсь выяснить, может ли приложение Flash создать POST-запрос, где некоторые из имен опубликованных элементов включают «.» символ

Фон:

Я работаю с кем-то, кто пишет приложение Flash, которое должно POST-данные на сервер. Я работаю над веб-приложением, которое получает и сохраняет данные. Поэтому я мало что знаю о внутренней работе Flash.

Чтобы разрешить автоматическое связывание данных на сервере (в Microsoft MVC), я хочу, чтобы имена элементов POST использовали конкретное соглашение об именах. Поэтому, если я хочу получить результаты двух тестов, я бы хотел, чтобы элементы POST использовали имена:

Tests[0].Score
Tests[0].Passed

Tests[1].Score
Tests[1].Passed

Если бы эти данные были отправлены из простой старой формы HTML, это было бы что-то вроде:

<input id="Areas_0__Score" name="Tests[0].Score" type="text" value="70" />
<input id="Areas_0__Passed" name="Tests[0].Passed" type="text" value="true" />

Однако разработчик говорит, что при создании POST-запроса во Flash любые элементы с «.» В имени игнорируются и не включаются в POST-запрос.

Это известное ограничение Flash или можно добавить «.» В имена элементов POST, как мне хотелось бы?

Заранее спасибо за любые идеи.

1 Ответ

1 голос
/ 08 марта 2012

Объект ASV URLVariables, используемый для создания переменных записи, является объектом.С синтаксисом falsh что-то вроде foo.bar будет означать, что bar является потомком / child / свойством объекта foo.URLVariables, в конечном счете, также являются объектами, поэтому что-то вроде Tests [0] .Score не является допустимым именем для объекта.См. Этот пример: Примеры URLVariables

Особенно:

var variables:URLVariables = new URLVariables();
variables.exampleSessionId = new Date().getTime();

Создание такой переменной, как вы предлагаете, не будет работать из-за этого синтаксиса точек, используемого для свойств / потомков объекта:

variables.Tests[0].Score будет означать для Flash что-то вроде: * У объекта variables есть свойство с именем Test[0], у которого есть свойство с именем Score, которое не имеет смысла / является ошибочным actioncript.Поскольку Flash преобразует объект URLVariables с его атрибутами в фактическую запись HTTP, он завершается ошибкой, когда атрибуты имеют атрибуты.

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