Когда и как Вы используете сторону сервера JavaScript? [закрытый]

Это сообщение - лучшее, что я прочитал по этому вопросу

. Короче говоря, ковариация / контравариантность / инвариантность связана с автоматическим литьем типов (от базового до производного и вице- Versa). Эти типы типов возможны только в том случае, если некоторые гарантии соблюдаются в отношении действий чтения / записи, выполняемых на литых объектах. Читайте сообщение для более подробной информации.

72
задан Peter Hilton 20 January 2009 в 00:07
поделиться

11 ответов

Существует проект Phobos , который является стороной сервера платформа JavaScript.

Назад В День, веб-сервер Netscape предложил сценарий Java серверной стороны также.

В обоих из этих случаев, JavaScript используется точно так же, как Вы использовали бы любой язык на сервере. Обычно обработать Запросы HTTP и генерировать содержание.

Носорог , который является системой JavaScript Mozilla для Java, компилирует JavaScript в в Байт-коды Java, которые JVM может выбрать к JIT. Другие системы используют другие средства для выполнения сценария Java, даже до такой степени, что некоторые - JIT, компилирующий их сценарий Java внутренние коды.

я предвижу, что будет все больше JavaScript на сервере. Когда Вы пишете "толстые" приложения в JavaScript на клиенте, тогда можно также быть в состоянии записать логику в JavaScript на сервере для не создания познавательных прыжков от одного языка до другого. Среды будут отличаться, но большая часть Вашего кода и знания будет совместно используема.

Наконец, JavaScript является, вероятно, исключительным языком, который имеет большую часть денег, указывающих на него прямо сейчас с точки зрения реализаций. От Apple, Mozilla, Google, и даже Microsoft, а также усилий сделать его еще более усовершенствованным языком (т.е. в основном Схема с алгольным синтаксисом без макросов).

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

инструменты являются самым большим местом, где JavaScript недостает, особенно на стороне сервера, но если Вы рассматриваете что-то как Phobos, где можно отладить сторону сервера JavaScript в IDE, это - большое продвижение.

Лично, я бросаю JavaScript вокруг в моих приложениях как белая краска. Это предлагает дешевую расширяемость для очень небольшого количества стоимости и является большим механизмом реализации.

25
ответ дан Musa Haidari 7 November 2019 в 08:32
поделиться

Это не Ajax, если люди не используют термин неправильно. Как его имя предполагает, SSJS является JavaScript, который работает на сервере, интерпретируемом автономным (т.е. независимый от браузера) механизм JavaScript, как SpiderMonkey.

, Почему беспокойство? Ну, одна область, я в настоящее время вижу его, недостаточно использовала в, находится в подтверждении правильности данных. С SSJS Вы пишете одну часть кода, который тогда привыкает и на сервере и на клиенте. Таким образом Вы получаете непосредственные отзывы пользователей от клиентского JS, который будет автоматически соответствовать проверке данных, происходящей на сервере.

27
ответ дан Kev 7 November 2019 в 08:32
поделиться

Классический ASP смог использовать JavaScript на сервере, хотя большинство людей использовало VBScript.

Одно востребованное использование JavaScript на сервере как дополнение к клиентскому подтверждению правильности данных. Например, Вы могли бы пользоваться той же библиотекой проверки JavaScript на клиенте и на сервере. Это гарантирует использование той же логики на клиенте, как Вы находитесь на сервере, но (потенциально) предотвращении ненужного распространения в прямом и обратном направлениях путем предварительной проверки на стороне клиента.

Википедия перечисляет много серверных сторон реализации JavaScript здесь .

20
ответ дан Lee Harold 7 November 2019 в 08:32
поделиться

Это могло послать к использованию JavaScript добавить сообщения к веб-серверу, не перезагружая страницу: другими словами, Ajax.

, Но более вероятно я думаю, что это означает что-то как Aptana/Jaxer (или, сегодня, Node.js), который использует JavaScript для языка серверной стороны. В этом случае помните, что JavaScript является просто языком: DOM, используемый в веб-браузере, является своего рода API. Серверная сторона механизмы JavaScript обеспечила бы их собственные объекты API, приспособленные в задачах серверной стороны как DB и доступ к файловой системе.

Серверная сторона JavaScript является интересной идеей из-за клиентской проблемы проверки: Вы хотите сделать проверку, клиентскую, чтобы не отправлять бесполезные запросы к Вашему серверу. Это улучшает производительность сервера и уменьшает задержку на клиенте. Но Вы должны делать серверную сторону проверки, потому что Вы не можете доверять клиенту. Это приводит к большому количеству дублирующего кода между клиентом и сервером.

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

6
ответ дан Joel Coehoorn 7 November 2019 в 08:32
поделиться

Это действительно зависит, если Вы говорите о ASP.NET или Классическом ASP. При использовании ASP.NET нет многих серьезных оснований для использования JavaScript.

Классик ASP является различным случаем. Можно использовать JavaScript на стороне сервера в ASP просто тот же способ, которым Вы использовали бы VBScript. Можно получить доступ к Приложению, Серверу, Запросу и объектам Ответа все равно как через VBScript.

может быть реальная выгода для использования JavaScript на стороне сервера в ASP, а не VBScript. Это означает, что можно совместно использовать код между кодом браузера и серверным кодом. Это также означает, что Ваши разработчики не должны иметь дело с двумя различными языками.

существуют некоторые оборотные стороны к стороне сервера JavaScript в ASP все же. Во-первых это, кажется, не с такой скоростью, как VBScript на стороне сервера при конкатенации строк. Это также не столь хорошо как совершение звонков к COM-объектам как VBScript (можно только вернуть данные из вызовов COM через возвращаемое значение, а не через out/byref параметры).

3
ответ дан andynormancx 7 November 2019 в 08:32
поделиться

Вы могли бы хотеть иметь некоторую функциональность и в браузере и в сервере для имения той же самой реализации.

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

, По-видимому Носорог может скомпилировать JavaScript в классы Java.

2
ответ дан Francisco Canedo 7 November 2019 в 08:32
поделиться

Традиционно, JavaScript обтекает Объектную модель документа. Но что, если бы Вы работаете на магазин Java и хотели бы механизм выполнения сценариев вокруг своей модели пользовательского объекта? Именно тогда Серверная сторона JavaScript входит.

http://en.wikipedia.org/wiki/Server-side_JavaScript

1
ответ дан yogman 7 November 2019 в 08:32
поделиться

Я помню с Кокон (платформа Java/XML/Javascript MVC Apache), я раньше использовал серверную сторону JavaScript, так как было что-то (я верю cforms), который должен был быть записан в JavaScript и работал на сервере даже при том, что я полагаю, что Вы могли записать его в Java.

Мы использовали Rhyno к тому времени, проверьте: http://peter.michaux.ca/articles/server-side-javascript-with-rhino-and-jetty

1
ответ дан igorgue 7 November 2019 в 08:32
поделиться

http://steve-yegge.blogspot.com/2007/06/rhino-on-rails.html

Выезд, как Steve Yegge использует Серверную сторону JavaScript с Носорогом и почему. У него есть набор материала о том, как он чувствует, что JavaScript произошел и прибытие.

1
ответ дан Greg 7 November 2019 в 08:32
поделиться

Да я только что читал о SSJS на , блог некоторого парня назвал John Resig.

Он описывает механизм под названием Jaxer, который он говорит, "Предполагают срывать визуальную часть рендеринга Firefox и замены его с рычагом к Apache вместо этого - примерно разговор, это - каков Jaxer".

Для любого, кто знает ASP.NET, HTML выглядит знакомым

<html>
<head>
  <script src="http://code.jquery.com/jquery.js" runat="both"></script>
  <script>
    jQuery(function($){
      $("form").submit(function(){
        save( $("textarea").val() );
        return false;
      });
    });
  </script>
 <script runat="server">
    function save( text ){
      Jaxer.File.write("tmp.txt", text);
    }
    save.proxy = true;

    function load(){
      $("textarea").val(
        Jaxer.File.exists("tmp.txt") ? Jaxer.File.read("tmp.txt") : "");
    }
  </script>
</head>
<body onserverload="load()">
   <form action="" method="post">
    <textarea></textarea>
    <input type="submit"/>
  </form>
</body>
</html>

Примечание, которое runat = "разъединяют" и runat = "оба"

1
ответ дан Community 7 November 2019 в 08:32
поделиться

С ASP вы можете использовать серверный JavaScript несколькими способами. Чаще всего я использую его, чтобы один и тот же код выполнялся на клиенте и на сервере для проверки .

file.js

<!--//--><%

//javascript code
function example(){return "Hello, World!";}

//%>

file.html

<%@LANGUAGE="javascript"%>
<!-- METADATA TYPE="typelib" 
FILE="C:\Archivos de programa\Archivos comunes\System\ado\msado15.dll" -->
<!--#include file="file.js"-->
<html>
<head>
  <script language="javascript" src="file.js"></script>
</head>
<body>
<%=example();%>
<script language="javascript">alert(example());</script>
</body>
</html>

file.js ] начинается и заканчивается таким же образом, чтобы разрешить включение того же файла.

1
ответ дан 24 November 2019 в 12:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: