nodejs处理get请求
主要记录下获取get请求里面的参数的问题。
假设有这样一个链接
urlString='hello?name=LiLei&position=general'
要从这个链接里提取出参数name和position的值。这里要用到url模块和querystring模块,所以先准备这两个对象。
var url = require("url");
var querystring = require("querystring");
然后将urlString转化成url对象,并提取参数字符串"name=LiLei&position=general"
var UrlString = url.parse(urlString); //将字符串urlString转化成url对象UrlString
var QueryString = UrlString.query;//获取参数字符串,此时QueryString="name=LiLei&position=general"
然后利用querystring.parse()将参数字符串QueryString转化成含有键值对的对象params
var params = querystring.parse(QueryString);
然后用params["name"]、params["position"] (或者params.name、params.position)就能获取参数name、posiotion的值。上面两步也可以综合起来写成
var params = querystring.parse(url.parse(urlString).query);
下面给出个小例子(已省去非关键代码):
var handle = {};
var url = require("url");
var querystring = require("querystring");
handle["/hello"] = hello;
function hello(request, response) {
/*
url.parse将字符串转化成url对象,
url.parse().query获取url里面的参数字符串,比如“name=LiLei&position=general”,
再用querystring.parse(query),将“name=LiLei&position=general”转换成键值对组成的对象params,像{name:"LiLei",position:"general"}这样
*/
var params = querystring.parse(url.parse(request.url).query);
response.writeHead(200, {"Content-Type": "text/html;charset=utf-8"});//添加charset=utf-8以支持中文
response.write("name:" + params.name + "<br/>");
response.write("position:" + params.position + "<br/>");
/*或者也可以像下面这样使用遍历*/
/*for(var param in params){
response.write(param + ":" + params[param] + "<br/>");
}*/
response.end();
}
exports.hello = hello;
nodejs处理get请求的更多相关文章
- nodejs接收post请求参数
原文 https://blog.csdn.net/u013263917/article/details/78682270#1.2 nodejs接收post请求参数1.1-浏览器发送post请求参数的方 ...
- nodejs模仿http请求组件nodegrass简单例子
1.搭建nodejs环境. 2.执行npm install nodegrass命令. 3.引入模块,var ng= require(nodegrass); 4.下面先看nodegrass底层的get方 ...
- nodejs发起HTTPS请求并获取数据
摘要:在网站中有时候需要跨域请求数据,直接用Ajax无法实现跨域,采用其他方式需要根据不同的浏览器做相应的处理.用Nodejs可以很好的解决这些问题,后台引用HTTPS模块,发送和返回的数据均为JSO ...
- Nodejs发送Post请求时出现socket hang up错误的解决办法
参考nodejs官网发送http post请求的方法,实现了一个模拟post提交的功能.实际使用时报socket hang up错误. 后来发现是请求头设置的问题,发送选项中需要加上headers字段 ...
- nodejs 发起http请求
http://nodejs.cn/api/http.html#http_http_request_options_callback http://yijiebuyi.com/blog/8221eb14 ...
- nodejs的POST请求
http://blog.csdn.net/puncha/article/details/9015317 Nodejs 发送HTTP POST请求实例 2013-06-03 17:55 71745人阅读 ...
- nodejs笔记2——请求路由
对于不同的URL请求,服务器应该有不同的反应.我们要为路由提供请求的URL和其他需要的GET及POST参数,随后路由需要根据这些数据来执行相应的代码.我们需要的所有数据都会包含在request对象中, ...
- nodejs中https请求失败,无报错
今天群里一位同学在做练习的时候,采用https例子: // curl -k https://localhost:8000/ const https = require('https'); const ...
- nodejs获取post请求发送的formData数据
前端post请求发送formData的类型数据时,需要服务端引入中间件body-parser,主要原因是post请求发送的数据,是在http的body里面,所以需要进行解析,否则获取不到数据(数据为空 ...
随机推荐
- Chrome开发者工具详解(5)-Application、Security、Audits面板
Chrome开发者工具详解(5)-Application.Security.Audits面板 这篇文章是Chrome开发者工具详解这一系列的最后一篇,介绍DevTools最后的三个面板功能-Appli ...
- eclipse中怎么用cmd
1:点击Run-----External tools------External tools configurations - 如果所示, name:就是工具配置的名字 location:cmd.ex ...
- python基础之异常处理
Python3 错误和异常 作为Python初学者,在刚学习Python编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python有两种错误很容易辨认:语法错误和异常. ...
- 【来自媳妇的需求】PHP实现随机数和方程求解
话说2015.11.06 ,北京下了第一场雪.16年的今天没下雪,但是雾霾还是不小的,帮媳妇整理她工作时,出现了下面的需求,便想到使用PHP来写程序来进行求解. [需求] 1. 给出一个平均值X,反过 ...
- 无限级ddsmoothmenu菜单实例
点击这里查看效果以横向ddsmoothmenu下来菜单为例,以下是实现代码: <base target="_blank" /><link rel="st ...
- if语句,case语句
1.句式:if...then.判断赋值 例: if RadioButton1.Checked then sex:='男' else if RadioButton2.Checked then sex:= ...
- 调用百度地图API
http://lbsyun.baidu.com/index.php?title=jspopular
- Mockito Hello World
Mockito Hello World 项目配置 IDE是Intellij IDEA,用gradle配置项目. 新建一个Java项目,gradle中需要有这个: repositories { jc ...
- 【Swift 2.0】实现简单弹幕功能
前言 简单实现弹幕功能,表跟我谈效率,但也有用队列控制同时弹的数量. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over ...
- iOS之 block,代替代理作为回调函数
最近在弄一个视频会议的项目,但今天要说的跟视频基本没关系,我们来说一下在一个view中创建一个button,在controller中加载这个view 当button被点击后将时间响应传递给contro ...