请使用下列bash命令下载、编译和运行本项目:

  快速上手
  
  请使用下列bash命令下载、编译和运行本项目:
  
  $ git clone https://github.com/PerfectExamples/Perfect-Markdown-Editor.git
  
  $ cd Perfect-Markdown-Editor
  
  $ swift build
  
  $ ./.build/debug/PerfectMarkdownEditor
  
  4
  
  如果运行成功,则终端会显示:
  
  [INFO] Starting HTTP server localhost on 0.0.0.0:7777
  
  1
  
  1
  
  这意味着服务器已经成功启动,现在您可以使用浏览器查看地址】,如下图所示:
  
  作为教学程序,这里采用了没有任何附加页面特效和色彩的素颜HTML,以将代码简化到最为容易理解的程度。当然您可以随时将喜爱的CSS主题加入到源程序。
  
  源代码简介
  
  本项目是在 PerfectTemplate 基础上编制完成的。如果您还不熟悉如何使用Swift编写服务器应用程序,请首先查看这个项目。
  
  Package.swift
  
  即SPM软件包管理器在编译项目时标准的源程序,核心代码如下:
  
  .Package(url: "http://www.gouyily.cn /PerfectlySoft/Perfect-WebSockets.git", majorVersion:2),
  
  .Package(url: http://www.dwhxsl.cn / /PerfectlySoft/Perfect-Markdown.git", majorVersion: 1)
  
  1
  
  2
  
  3
  
  1
  
  2
  
  3
  
  上述依存关系中, Perfect-HTTPServer 包括了启动一个Swift语言在 mac / Linux 上开发HTTP服务器的所有必要功能;而 Perfect-Markdown 用于Swift语言将Markdown字符串转换为HTML文本。最后的 Perfect-WebSocket 用于服务器支持HTML5/WebSocket扩展。
  
  main.swift
  
  main.swift 是该服务器的门户入口,是一个典型的PerfectTemplate 模板程序。该服务器只提供两个路由资源:
  
  /editor - WebSocket 处理器,即能够处理来自浏览器端的 WebSocket 请求:
  
  public class EditorHandler: WebSocketSessionHandler {
  
  public let socketProtocol : String? = "editor"
  
  // 如果窗口关闭等事件发生则需要关闭socket
  
  public func handleSession(request: HTTPRequest, socket: WebSocket) {
  
  socket.readStringMessage { input, _, _ in
  
  guard let input = input else {
  
  socket.close()
  
  return
  
  }//end guard
  
  // 就这一行代码,把输入的Markdown内容转换为HTML
  
  let output = input.markdownToHTML ?? ""
  
  // 将转化好的HTML文本返回给客户端
  
  socket.sendStringMessage(string: output, final: true) {
  
  self.handleSession(request: request, socket: socket)
  
  }//end send
  
  }//end readStringMessage
  
  }//end handleSession
  
  }//end Handler
  
  / - 根路由,即一个静态的HTML主页页面。但是客户端的行为 - 输入任何Markdown内容都可以立刻看到HTML渲染效果 - 是由在该主页中嵌入的一小段 WebSocket 脚本控制的。
  
  `
  
  var input, output;
  
  function init(){
  
  input = document.getElementById(‘textInput‘);
  
  output = document.getElementById(‘results‘);
  
  //这一句话是创建WebSocket,并且将目标指向当前服务器,采用/editor路由和editor协议(碰巧重名)
  
  sock = new WebSocket(‘ws://‘ + window.location.host + ‘/editor‘, ‘editor‘);
  
  sock.onmessage = function(evt) { output.innerText = evt.data; }
  
  }//end init
  
  function send() {
  
  sock.send(input.value);
  
  12
  
  最后,配置并启动服务器:
  
  // 只需填写服务器名称、端口,以及上述两个路由句柄
  
  let configuration = [ "servers": [[ "name":"localhost", "port":PORT,
  
  "routes":[
  
  ["method":"get", "uri":"/", "handler":handler],
  
  ["method":"get", "uri":"/\(API)", "handler":socketHandler]
  
  ]]]
  
  ]//end configuration

时间: 2024-10-11 16:12:47

请使用下列bash命令下载、编译和运行本项目:的相关文章

请使用下列bash命令下载、编译和运行本项目

请使用下列bash命令下载.编译和运行本项目: $ git clone https://github.com/PerfectExamples/Perfect-Markdown-Editor.git $ cd Perfect-Markdown-Editor $ swift build 如果运行成功,则终端会显示: [INFO] Starting HTTP server localhost on http://027yeshenghuowang.com/ 0.0.0.0:7777 1 1 这意味着服

使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0

使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的,大多又是 0.20 等旧版本版本的做法,即 javac -classpath /usr/local/hadoop/hadoop-1.0.1/hadoop-core-1.0.1.jar WordCount.java,但较新的 2.X 版本中,已经没有 hadoop-core*.jar 这个文件,因此

[hadoop]命令行编译并运行hadoop例子WordCount

首先保证JDK.Hadoop安装设置成功 可以参考[linux]ubuntu下安装hadoop [linux]ubutnu12.04 下安装jdk1.7 使用hadoop版本为1.2.1,jdk为1.7 在hadoop-1.2.1\src\examples\org\apache\hadoop\examples找到WordCount.java 源码如下: 1 /** 2 * Licensed under the Apache License, Version 2.0 (the "License&q

如何使用命令行编译以及运行java文件

要想编译和运行java文件,很简单,只需要两个命令: (1) javac:作用:编译java文件:使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会生成一个Hello.class文件,这个class文件是操作系统能够使用和运行的文件. (2)java: 作用:运行.class文件:使用方法:java Hello,如果不出错的话,会执行Hello.class文件.注意:这里的Hello后面不需要扩展名. 下面举例说明: 假设我有一个Hello.j

加载依赖的jar包在命令行编译和运行java文件

在命令里编译和执行java文件,当应用程序需要需要依赖的jar包里面的class文件才能编译运行的时候,应该这样做: 1. 首先是编译过程,在命令行里面执行: (1) javac -classpath ClassPath Test.java    //其中ClassPath对应的是jar包的路径,这个jar包亦可以是zip包 (2) javac -classpath CLASSPATH:*.jar Test.java    //其中ClassPath对应的是jar包的路径,这个jar包亦可以是z

使用命令行编译打包运行MapReduce程序

本文地址:http://www.cnblogs.com/myresearch/p/mapreduce-compile-jar-run.html,转载请注明源地址. 对于如何编译WordCount.java,对于0.20 等旧版本版本的做法很常见,具体如下: javac -classpath /usr/local/hadoop/hadoop-1.0.1/hadoop-core-1.0.1.jar WordCount.java 但较新的 2.X 版本中,已经没有 hadoop-core*.jar 这

命令行编译和运行带backage和带jar的包

一.带backage的: 编写一个类,它是按照包的层次编码的,如果此时想通过javac和java命令来编译运行,就需要如下来做: 在c:\net\test下建立一个HelloWorld.java的文件,放入C:\,内容如下: package net.test; //注意:这个第一行就是对包进行说明,其中net后面的点其实是目录的意思. public class HelloWorld { public static void main(String args[]) { System.out.pri

如何使用命令行编译和运行java文件

相信大家现在一般都在使用IDE环境来开发运行java文件,但我觉得可以在命令行里面简单运行java文件,技多不压身. 接下来我来说一下编译和运行java文件: 第一步,首先下一个入门程序(注意:一定要将程序里面的类名跟保存的文件名称写成一样) 第二步,进入到java文件保存的目录(注意:必须要进入到保存的目录,否则运行会出错) 第四步使用javac HelloWorld.java编译源程序会生成一个.class的中间代码 第五步使用java HelloWorld运行程序(注意java后面的程序结

6.命令行编译打包运行五个MapReduce程序

对于如何编译WordCount.java,对于0.20 等旧版本版本的做法很常见,具体如下: javac -classpath /usr/local/hadoop/hadoop-1.0.1/hadoop-core-1.0.1.jar WordCount.java 但较新的 2.X 版本中,已经没有 hadoop-core*.jar 这个文件,因此编辑和打包自己的MapReduce程序与旧版本有所不同. Hadoop 2.x 版本中的依赖 jar Hadoop 2.x 版本中jar不再集中在一个