Потоковая передача данных на веб-сервер с Windows Phone - PullRequest
0 голосов
/ 12 мая 2011

Возможна потоковая передача данных с веб-сервера с использованием класса HttpWebRequest в Windows Phone 7.

К сожалению, Microsoft удалила возможность потоковой передачи данных на веб-сервер, используя этот класс. Свойство AllowWriteStreamBuffering недоступно на телефоне.

Несмотря на то, что вы можете записать в поток, возвращенный из EndGetRequestStream , данные отправляются на сервер только при вызове BeginGetResponse. Это означает, что если у вас огромное количество данные для отправки, все они будут сохранены в памяти.

Если вы контролируете серверную часть, вы можете разделить сообщение на несколько запросов, но это не всегда так.

Меня поразило, что, возможно, я смогу встроить скрытый WebBrowser в свою страницу, а затем передать данные в браузер, используя InvokeScript , и получить поток данных Javascript от WebBrowser.

Прежде чем я пойду по этому (довольно грязному) маршруту, я хотел узнать, пробовал ли кто-нибудь еще, и если да, с какими проблемами вы столкнулись?

1 Ответ

0 голосов
/ 12 мая 2011

Звучит как мир боли ....

Есть ли у вас контроль над протоколом / программным обеспечением, используемым на сервере?Если вы это сделаете, то я думаю, что я бы изменил протокол, чтобы вы транслировали, используя последовательность множества HTTP-запросов, а не один большой HTTP-запрос.

В качестве альтернативы, если вы можете подождать пару недель, то что-то может быть доступно в новом выпуске инструментов "Mango" - определенно было высказано предположение, что Mango "представит поддержку сокетов TCP IP", которые, как мы надеемся, обеспечатнеобходимая вам функциональность.

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