Представить ответ XMLHTTPRequest клиенту? - PullRequest
0 голосов
/ 07 августа 2010

Я использую XMLHTTPRequest для подделки интерфейса RESTful. После того, как объект ответа возвращает данные из запроса, как я могу представить это пользователю? Например, в запросе PUT сервер фактически отвечает полной HTML-страницей данных (в большинстве случаев), и я хочу отобразить всю эту страницу клиенту. Есть идеи как? Я уверен, что ответ есть, но из-за недостатка знаний JS я столкнулся со стеной, вероятно, из-за плохой терминологии JS.

Обратите внимание, что я не более чем готов использовать современный набор JS, такой как DOJO или JQuery. Кроме того, я не ищу Ajax-подобный эффект. На самом деле, как только пара браузеров поддержит правильные методы спецификации HTML5 (GET / POST / PUT / DELETE), я дам для этого JS-хак.

Любая помощь будет высоко ценится!

Редактировать: Общаясь с другими, были представлены две идеи. Одним из них было использование IFrame и отправка туда данных. Другой был перенаправить на "data:text/html,"+xhr.responseText, который работает, но уродливо для пользователя. : / .. Я могу закончить тем, что бросил и скрыл аргументы метода в форме HTML ( скрытый ввод ) и работал с ним на стороне сервера, потому что мне просто еще не удалось найти хороший способ использования JS для реализации поддержка на стороне клиента интерфейса RESTful.

1 Ответ

0 голосов
/ 08 августа 2010

Вы можете открыть всплывающий контейнер и записать все свои ответы в этот контейнер, или вы можете открыть новое окно, используя javascript и поместить все данные ответа в это окно.

например :

function writeConsole(content) {
  top.consoleRef=window.open('','myconsole',
  'width=350,height=250'
  +',menubar=0'
  +',toolbar=1'
  +',status=0'
  +',scrollbars=1'
  +',resizable=1')
  top.consoleRef.document.writeln(
  '<html><head><title>Console</title></head>'
  +'<body bgcolor=white onLoad="self.focus()">'
  +content
  +'</body></html>'  )
  top.consoleRef.document.close()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...