2015-05-17 2 views
2

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

Мне нужен сценарий, который может вписаться в небольшой URI пространство (около 1000 символов или меньше), которое будет быстро обновлять себя информацией, анализируемой серверным скриптом (lsl/mono, обслуживаемым мета-стильным объектом через http).

Целевой браузер - это встроенный медиа-просмотрщик программы Second Life (Mozilla based). Анализируемый html будет исходить из сценария LSL/mono. Я пытаюсь отобразить полученный html на примитиве внутри мета-стиха Second Life (который в основном просто превращает примитивное лицо в своеобразное УФ-проецируемое окно браузера) при разрешении обновления от 0.2 до 0.5 секунд.

Полагаю, что мне нужно что-то вроде ajax, чтобы постоянно пинговать обслуживающий объект для обновленной динамической информации и обновлять раздел в исходном URI? Я не понимаю, как это сделать.

Уже пробовал: Я пробовал просто поместить мой маленький бит html в сам URI и иметь сценарий mono/lsl в мета-стихе заставляет обновление браузера, и это работает в некоторой степени, но заставляя обновление мультимедиа через такой сценарий дросселируется до надежного разрешения обновления около 2 секунд. Мне действительно нужно, чтобы обновление было полностью клиентской стороной ... с разрешением более 0,2 секунды, поскольку информация используется для обновления цифровых приборов для движущихся автомобилей.

Уже пробовал: Просто используя обновление на основе мета в URI. Либо я сделал это неправильно, либо просто не работает. Будет ли такой способ поддерживать разрешение менее секунды?

Также попытались использовать примеры скриптов о ajax с этого веб-сайта, и, хотя они дают хороший пример кода, они не показывают, как настроить заголовки и т. Д. В браузере для использования любых библиотек, о которых они говорят (предполагается, что на уровне этих потоков читатель знает, о каких библиотеках они говорят и как их устанавливать) ... поэтому ничто из этого не работает для меня на данный момент.

Сценарий сервера анализирует простой бит динамически обновленного HTML-форматированного текста. Все они могут быть сброшены в одну область div на каждом переполнении.

Пример HTML, что требует быстрого разбора:

<body bgcolor="black"> 
<font size="7" color="cyan"><center> 
Throttle: 50%<br> 
Speed: 40<br> 
Bearing: 100, 100, 1000<hr="red"> 
HP: 200 - Kills: 3<br> 
Damage Dealt: 1000 
</center></body> 

Или, если это более эффективно, она может быть сброшена в качестве простых переменных обновлений для более продвинутого сценария, который только изменения «цифра» в таблице? Но я не знаю, как это сделать.

Я думаю, что у меня довольно хорошее понимание того, как получить скрипты на стороне сервера для анализа требуемого html, который я хочу отобразить. Я просто полностью потерял, как настроить URI, который будет запрашивать его каждые 0,2 секунды с клиентской стороны ... и избегать вытаскивания этой информации из «кеша», а не фактического целевого URL-адреса.

+0

Используйте веб-сокетов: http://socket.io – royhowie

+0

Что _ "а небольшое пространство URI (около 1000 символов или меньше) "_? Всего 'js', который обновляет' div' 1000 символов или меньше? – guest271314

+0

В мета-стихе может быть URI (в отличие от URL) ограниченного пространства, которое может содержать небольшой скрипт или небольшую веб-страницу. – Credo

ответ

0

Если интерпретировать вопрос правильно, попробуйте используя XMLHttpRequest

var js = 'data:text/html;charset=utf-8,<html><script>(function r(){var x=new XMLHttpRequest();x.open("GET","https://gist.githubusercontent.com/anonymous/27e432abdb3c506aaa04/raw/109eb3da644a4bbc4aaa4d10ed286471a31b9655/update.html",true);x.onload=function(){document.write(x.responseText);setTimeout(function(){console.log(r)},200)};x.send()}())</script></html>'; 

431 символов

// note, `console.log(r)` called at `x.onload` instead of `r()` , 
 
// at stacksnippets ; to prevent recursive call to `r` , multiple requests , here 
 
var js = 'data:text/html;charset=utf-8,%3Chtml%3E%3Cscript%3E(function%20r()%7Bvar%20x%3Dnew%20XMLHttpRequest()%3Bx.open(%22GET%22%2C%22https%3A%2F%2Fgist.githubusercontent.com%2Fanonymous%2F27e432abdb3c506aaa04%2Fraw%2F109eb3da644a4bbc4aaa4d10ed286471a31b9655%2Fupdate.html%22%2Ctrue)%3Bx.onload%3Dfunction()%7Bdocument.write(x.responseText)%3BsetTimeout(function()%7Bconsole.log(r)%7D%2C200)%7D%3Bx.send()%7D())%3C%2Fscript%3E%3C%2Fhtml%3E'; 
 

 
location.href = js;

Смежные вопросы