Я был премьер-министром по API браузера VoiceXML, который мы поставили с UCMA 3.0. Я связался с одним из разработчиков, который работал над его реализацией, и попросил ее разобраться в этой проблеме. Вот ее ответ.
Браузер VXML позволяет отправлять CookieContainer в браузер методами Run () и RunAsync (). В ходе работы браузер будет отправлять http-запросы на серверы для содержимого vxml. Этот контейнер cookie отправляется как часть запроса http, и любые файлы cookie, отправляемые сервером, также попадают в этот контейнер. Это за дизайн.
Это позволяет вам создавать динамические серверы, которые могут обслуживать различные vxml на основе отправленных файлов cookie. Вы также можете просмотреть значения файлов cookie сервера после завершения сеанса. Например, учетная запись золотого клиента может быть специальным диалоговым окном, и сервер может отправлять вам файлы cookie, помогая вам определить, в какую очередь отправлять вызов после завершения работы браузера.
Однако файлы cookie не передаются в само приложение vxml, то есть они не доступны на уровне javascript внутри документа vxml. Я согласен, что это было бы удобно, и, конечно, инженеры, привыкшие иметь дело с HTML-браузерами, где они могут получить доступ к «document.cookie», могут ожидать этого. Но спецификация w3c vxml не вызывает стандартного поведения в этой области, и браузер Microsoft не предоставляет эту функциональность.
Если бы такая функциональность была желательна, одним из технических решений было бы, чтобы ваш сервер считывал куки и динамически генерировал vxml со значениями куки, установленными для некоторых переменных javascript.