`
shenyuc629
  • 浏览: 195480 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论
阅读更多
在node.js中,我们需要分析一下URL:
我们需要查看一下http请求,从中提取出请求的URL以及GET/POST参数。

我们需要的所有数据都会包含在request对象中,该对象作为onRequest()回调函数的第一个参数传递。但是为了解析这些数据,我们需要额外的Node.JS模块,它们分别是url和querystring模块。



                                         url.parse(string).query
                                           |
           url.parse(string).pathname      |
                       |                   |
                       |                   |
                     ------ -------------------
http://localhost:8888/start?foo=bar&hello=world
                                ---       -----
                                 |          |
                                 |          |
              querystring(string)["foo"]    |
                                            |
                         querystring(string)["hello"]


好了,我们写服务端的代码,即server.js

var http = require("http");

var url = require("url");

function start(route){
	function onRequest(request,response){
		var pathname = url.parse(request.url).pathname;
		console.log("Request for " + pathname + "  received.") ;

		route(pathname);

		response.writeHead(200,{"Content-Type":"text/plain"});
		response.write("Hello World");
		response.end();
	}

	http.createServer(onRequest).listen(8080);
	console.log("Server has started.");
}

exports.start = start;



然后是路由代码:


function route(pathname){
	console.log("About to route a request for " + pathname);
}

exports.route = route;


然后是主类代码:
var server = require("./server");
var router = require("./router");
server.start(router.route);


运行结果:

Administrator@WIN-23C1Q4GKQ4G ~
$ node /example/index.js
Server has started.

Request for /syc  received.
About to route a request for /syc
0
0
分享到:
评论

相关推荐

    Node.js-server.jsforNode.js一个简单而强大的Node.js服务器

    在这个例子中,当服务器接收到请求时,它会返回一个"Hello, World!"的响应。`createServer()`接收一个回调函数,该函数有两个参数:`request`(请求对象)和`response`(响应对象)。通过`response`对象,我们可以...

    Node.js快速学习入门

    学习任何编程语言的第一步通常是打印 "Hello, World!"。在 Node.js 中,你可以创建一个名为 `index.js` 的文件,然后输入以下代码: ```javascript console.log('Hello, World!'); ``` 使用 `node index.js` ...

    Node.js - How To Code in Node.js

    通常,第一个程序都是“Hello World”程序,通过这个简单的例子,你可以了解 Node.js 的基本语法结构和执行流程。具体步骤包括创建一个新的 JavaScript 文件,编写代码,保存文件,然后使用命令行工具运行该文件。 ...

    typescript例子-如何使用node.js

    总结:通过以上步骤,我们成功地创建了一个使用 TypeScript 的 Node.js 服务器应用。TypeScript 的强类型系统和高级语言特性提高了代码质量,降低了出错的可能性。同时,TypeScript 与 Node.js 的结合也使得开发大型...

    node.js 环境搭建,简单使用

    1. **创建文件**: 使用文本编辑器创建一个.js文件,例如`hello.js`,这是你的第一个Node.js脚本。 2. **编写代码**: 在`hello.js`中输入以下代码: ```javascript console.log('Hello, World!'); ``` 3. **运行...

    Node入门-一本全面的Node.js教程

    **“Hello World”**:本书从最简单的“Hello World”示例入手,向读者展示了如何设置Node.js环境并运行第一个程序。这种入门级别的例子通常用于帮助初学者快速熟悉基本的语法和运行环境。 #### 构建完整Web应用 *...

    Node:Node.js函数介绍

    在 JavaScript 中,函数是第一等公民,这意味着它们可以像其他数据类型一样被赋值、传递和返回。这种特性使得函数可以作为参数传递给其他函数,这种用法在 Node.js 中十分常见。 **示例1:** ```javascript ...

    PB.Node.js.the.Right.Way.Nov.2013

    它跳过了传统的“Hello World”程序,直接使用实用的例子来帮助读者快速上手Node.js编程,并理解如何使其应用能够水平扩展。本书由The Pragmatic Bookshelf出版,位于德州达拉斯和北卡罗来纳州的罗利。 在技术细节...

    阿里云Node.js环境.docx

    这个例子中,我们创建了一个HTTP服务器,当接收到请求时,它会返回一个HTTP 200状态码和包含“Hello World”的响应内容。服务器会在10080端口上监听连接,且在启动后会在控制台打印出“Server is running”。 总之...

    Node.js-Polka是一个非常小高性能的Express.js替代品

    Polka是一个针对Node.js的小型高性能Web服务器,它提供了一种轻量级的替代方案,特别是对于那些不需要Express全部功能但仍然希望保持类似API体验的开发者来说。通过使用Polka,开发者可以在保持高效性能的同时,降低...

    hello world hello world

    ”是初学者编写的第一个程序,它会在执行时打印出这句话,以此来验证编程环境的正确配置。这个例子可能是表示我们要讨论的是关于编程或者软件开发的基础知识。 标签“hello world”进一步强化了这个主题,可能意味...

    node js开发入门小例子

    为了运行这个示例,需要在命令行中切换到`helloworld.js`所在目录,然后执行`node helloworld.js`。此时,Node.js服务器开始监听8888端口。接着,在浏览器中访问`http://localhost:8888`,如果看到"Hello World",则...

    Node.js-koa最快的路由器

    在这个例子中,`:id`是一个动态段,它会被替换为实际的用户ID。 通过Koa-rapid-router,开发者可以构建复杂的API和Web应用,同时保持代码的简洁性和效率。这个高效的路由器中间件使得Koa成为构建高性能Node.js...

    node js the right way p1

    Node.js是一种基于Chrome V8引擎的JavaScript运行时环境,它使用事件驱动、非阻塞I/O模型,非常适合处理高并发网络应用,如Web服务器。该技术自2009年由Ryan Dahl推出以来,以其轻量级、高效性能和简洁的代码而受到...

    最新nodejs 书籍

    - 第一个 Node.js 应用 2. **JavaScript 进阶** - 异步编程模型 - 模块系统与包管理 - 测试与调试 3. **服务器端开发** - HTTP 协议详解 - RESTful API 设计 - WebSockets 实现 4. **高级主题** - 流式...

    nodejs-helloworld:只是一个简单的hello world Node应用程序,仅此而已

    这个"nodejs-helloworld"项目就是一个入门级的示例,用于展示如何在Node.js中创建一个简单的“Hello, World!”应用程序。让我们深入了解一下这个项目和相关的知识点。 **Node.js基础** Node.js的核心特性是其非阻塞...

    hello-world-node:一个用于了解Node.js的简单存储库

    "程序是学习新编程语言时的第一个例子,通常用于演示语言的基本语法。在这里,"你好世界节点"可能指的是一个简单的Node.js程序,展示如何在命令行中打印出“Hello, World!”,帮助初学者快速上手。 结合【标签】...

Global site tag (gtag.js) - Google Analytics