Come si esegue dart in un server? dì in localhost o in qualsiasi server web? Attualmente google fornisce un editor per dart che esegue il codice nel browser dartium. Inoltre, anche se riesco a eseguirlo su un server, sarà visibile agli altri che visualizzano la pagina in un browser diverso da Dartium?Esecuzione di dart in un server Web
risposta
Quando crei una nuova "Applicazione Web" utilizzando l'Editor di Dart, crea un file .html e un file .dart. Il file HTML utilizza un tag per il collegamento al file .dart, ad esempio:
MyApp.html //contains <script type="application/dart" src="MyApp.dart"></script>
MyApp.dart //contains dart app code.
L'editor può anche generare un file JavaScript dal file .dart, ad esempio:
MyApp.dart.js //contains dart app code converted to JS
Per quanto riguarda un il web server è interessato, questi sono semplicemente file statici che vengono forniti al browser.
Il file html contiene un collegamento a uno script JavaScript speciale che può identificare se il browser in uso ha il supporto nativo per Dart (cioè Dartium).
In tal caso, viene utilizzata la coppia di file MyApp.html e MyApp.dart.
Se il browser non supporta Dart in modo nativo, lo script speciale modifica dinamicamente l'elemento di script in modo che punti al file MyApp.dart.js, in modo che il browser riceva la versione javascript dell'app.
Questo significa che è possibile copiare i tre file (html, js, .dart) su un qualsiasi web server (localhost o altro), e semplicemente selezionare il file .html.
Per completezza, il "copione speciale" può essere vista qui: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/client/dart.js
Chris, sarebbe possibile utilizzare il tuo esempio Dardo JSON http://www.dartlang.org/articles/json-web-service/ per essere servito da un server Web Apache o lighthttpd o nginx? btw, hai l'intero codice completo come uno da qualche parte? ^^ – Gero
Sì, funzionerebbe con qualsiasi server Web che fornisce servizi tramite POST e GET. C'è un codice simile in questo esempio che invia e recupera i dati da un server web: https://github.com/chrisbu/dartwatch-blog-server/blob/master/client/blog.dart (la parte server in questa istanza è anche scritto in dardo, ma non è necessario) –
Dartium è solo un browser Chromium con la possibilità di eseguire direttamente la freccetta in un "dardo vm". Questo accelera il processo di sviluppo. Il modo più comune per utilizzare dardo in altri browser e il server web è: compilare il dardo-codice javascript nativo :)
http://www.dartlang.org/docs/getting-started/sdk/#frog
Frog è il compilatore, che compila dardo-codice javascript
Si può effettivamente eseguire Dart come un server web:
import 'dart:io';
main() {
HttpServer.bind('127.0.0.1', 8080).then((server) {
server.listen((HttpRequest request) {
request.response.write('Hello, world');
request.response.close();
});
});
}
che avvia un web server sulla macchina locale usando porta 8080. Restituisce semplicemente "Ciao, mondo".
Da lì tutto quello che dovete fare è definire i percorsi, azioni, ecc
Questo è valido solo per lo sviluppo o anche per la produzione? – izolate
Ecco come ho messo Dart su Google App Engine, vale a dire: il dardo che è in esecuzione nel browser/sul client lato:
http://ambio-strong.blogspot.no/2012/07/dart-on-google-app-engine.html
Si potrebbe voler modificare quella risposta, che punta a un blogpost che a sua volta punta al codice di esempio. Questo è un triplo reindirizzamento. Sentiti libero di chiamarmi per un upvote quando hai finito :) – eckes
See: [c'è Dart VM disponibili?] (http://stackoverflow.com/q/7714302/648313) – Idolon