2012-04-28 12 views
8

मैं सर्वर में dart कैसे चला सकता हूं? लोकलहोस्ट या किसी भी वेब सर्वर में कहें? वर्तमान में Google एक डार्ट संपादक प्रदान करता है जो डार्टियम ब्राउज़र में कोड निष्पादित करता है। यहां तक ​​कि यदि मैं इसे किसी सर्वर पर चलाने के लिए भी प्राप्त करता हूं, तो यह पृष्ठ को अन्य लोगों को डार्टियम के अलावा किसी अन्य ब्राउज़र में देखने के लिए दृश्यमान होगा?वेब सर्वर में चल रहे डार्ट

+0

देखें: [डार्ट वीएम उपलब्ध वहाँ है?] (http://stackoverflow.com/q/7714302/648313) – Idolon

उत्तर

9

को डार्ट-कोड को संकलित करता है करने के लिए डार्ट-कोड संकलन जब आप डार्ट संपादक का उपयोग करके एक नया "वेब अनुप्रयोग" बनाते हैं, तो यह एक .html फ़ाइल और .dart फ़ाइल बनाता है। html फ़ाइल, .dart फ़ाइल से लिंक करने के लिए एक टैग का उपयोग करता जैसे:

MyApp.html //contains <script type="application/dart" src="MyApp.dart"></script> 
MyApp.dart //contains dart app code. 

संपादक भी .dart फ़ाइल से एक जावास्क्रिप्ट फ़ाइल, जैसे उत्पन्न कर सकते हैं: जहाँ तक एक के रूप में

MyApp.dart.js //contains dart app code converted to JS 

वेब सर्वर का संबंध है, ये केवल स्थिर फाइलें हैं जो ब्राउज़र पर सेवा प्राप्त करती हैं।

एचटीएमएल फ़ाइल में एक विशेष जावास्क्रिप्ट स्क्रिप्ट का एक लिंक होता है जो पहचान सकता है कि ब्राउज़र का उपयोग डार्ट (यानी डार्टियम) के लिए मूल समर्थन है या नहीं।

  • यदि ऐसा होता है, तो फिर MyApp.html और MyApp.dart फ़ाइलों की जोड़ी का उपयोग किया जाता है।

  • यदि ब्राउज़र डार्ट को मूल रूप से समर्थन नहीं देता है, तो विशेष स्क्रिप्ट गतिशील रूप से MyApp.dart.js फ़ाइल को इंगित करने के लिए स्क्रिप्ट तत्व को गतिशील रूप से बदलती है, ताकि ब्राउजर आपके ऐप का जावास्क्रिप्ट संस्करण प्राप्त कर सके।

इसका मतलब यह है कि आप किसी भी वेब सर्वर (स्थानीय होस्ट या अन्यथा) पर तीन फ़ाइलें (.html, .dart, .js) कॉपी कर सकते हैं, और बस .html फ़ाइल को ब्राउज़ करें।

पूर्णता के लिए, "विशेष स्क्रिप्ट" यहाँ देखी जा सकती है: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/client/dart.js

+0

क्रिस, क्या आपके JSON डार्ट उदाहरण http://www.dartlang.org/articles/json-web-service/ का उपयोग अपाचे या लाइटथेट्ड या nginx वेब सर्वर द्वारा किया जा सकता है? बीटीडब्ल्यू, क्या आपके पास पूरी तरह से पूर्ण कोड है? ^^ – Gero

+0

हां, यह पोस्ट और जीईटी के माध्यम से सेवाएं प्रदान करने वाले किसी भी वेब सर्वर के साथ काम करेगा। इस उदाहरण में एक समान कोड है जो वेब सर्वर से डेटा भेजता है और पुनर्प्राप्त करता है: https://github.com/chrisbu/dartwatch-blog-server/blob/master/client/blog.dart (इस उदाहरण में सर्वर भाग डार्ट में भी लिखा गया है, लेकिन इसे होने की आवश्यकता नहीं है) –

0

डार्टियम केवल एक क्रोमियम ब्राउज़र है जिसमें "डार्ट वीएम" में सीधे डार्ट चलाने के लिए पर्याप्त है। यह विकास प्रक्रिया को तेज करता है। आम तरीका अन्य ब्राउज़रों में और अपने वेब सर्वर पर डार्ट उपयोग करने के लिए है: देशी जावास्क्रिप्ट :)

http://www.dartlang.org/docs/getting-started/sdk/#frog

मेंढक संकलक, जो जावास्क्रिप्ट

+2

सवाल था (के रूप में मुझे लगता है कि) कैसे से डार्ट ले जाने के लिए क्लाइंट साइड (ब्राउजर) सर्वर साइड –

+0

@ ओम-नाम-नाम युप्स। – gopi1410

+0

@senk: मेंढक कंपाइलर के लिए धन्यवाद। इसके बारे में नहीं पता था। – gopi1410

11

आप वास्तव में एक वेब सर्वर के रूप में डार्ट चला सकते हैं:

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(); 
    }); 
    }); 
} 

स्थानीय मशीन पर एक वेब सर्वर शुरू होता है यही कारण है कि का उपयोग कर पोर्ट 8080. यह बस "हैलो, दुनिया" देता है।

वहां से तुम सब करने की जरूरत है अपने मार्गों, कार्यों, आदि को परिभाषित किया गया है

+1

क्या यह केवल विकास या उत्पादन के लिए अच्छा है? – izolate

-1

इस तरह मैं Google अनुप्रयोग इंजन पर डार्ट डाल दिया, वह यह है कि: डार्ट कि ब्राउज़र में चल रहा है/ग्राहक पर पक्ष:

http://ambio-strong.blogspot.no/2012/07/dart-on-google-app-engine.html

+1

आप उस उत्तर को संपादित करना चाहते हैं, यह एक ब्लॉगपोस्ट को इंगित करता है जो स्वयं नमूना कोड को इंगित करता है। एक तिहाई पुनर्निर्देशन करता है। पूरा होने पर मुझे ऊपर उठाने के लिए स्वतंत्र महसूस करें :) – eckes

संबंधित मुद्दे