node 发送 post 请求 get请求。
因为我们部门打算用node请求restful 然后慢慢替换掉服务端,以后直接请求soa的接口,让前端的数据更贴切项目,因为我们服务端接口和app公用一套,由于业务的需求和版本不统一(例如app6.4的接口,H5可能只用到6.0)经常变动啥啥啥啥,所以我们前端常常还要经过1层dataformat(旧的业务代码改动代价太大),反正如果能实行,可行的话 将让前端带来更薄、更舒适的体验(就差夜用更长了 哈哈)。
今天别人说想用C#封装api,再调用V8解析我们写的js代码 而达到我们一般前端人员也能写处理接口的代码;我一听就建议他能用node最好用node ,没必要用C#封一层,性能谁好谁坏没有测过先不说,但是有一点很致命的是,我们组的前端就他一个比较精通C#的代码,如果他走了,接下来的摊子谁维护? 我表达了我的观点,但他一面不采纳,抛下一句:你用node能搭建出和我C#一样的稳定代码,你可以用node。 我听后不爽,我决定接下来的时间,我要研究node。今天第一步,写个笔记。
好不扯淡
说到要请求post,get,那是不是应该要有一个服务接口,那我就先搭建一个php服务,获取get和post数据,为了简单展示,直接输出获取到的数据。
<?php
$name = $_GET['name'];
$age = $_POST['age'];
$db = $_POST['db'];
$response_obj->name = $name;
$response_obj->age = $age;
$response_obj->sb = $db;
echo json_encode($response_obj);
?>
好咱们php服务写好了,第二步就是用node去调用我们写好的php接口了
var http = require('http');
//创建一个http服务
http.createServer(
function(request, //客户端发来的请求,node.js 帮我们封装成 request 对象
response //我们利用response,向客户端发送回答
){
//在控制台显示request对象
var querystring = require('querystring');
var data=querystring.stringify({age:22, db: 'bbbbb'});
var http = require('http');
var opt = {
method: "POST",
host: "127.0.0.1",
port: 80,
path: "/demo/test.php?name=xmzzaaaa",
headers: {
"Content-Type":"application/x-www-form-urlencoded",
"Content-Length": data.length
}
};
//发送一个请求
var req = http.request(opt, function (serverFeedback) {
//console.log(serverFeedback.statusCode);
serverFeedback.on('data', function (chunk) {
//response.end('BODY: ' + chunk);
response.end('response ' + chunk);
//console.log('response ', chunk);
}).on('end', function (chunk) {
console.log('end');
});
return;
}).on('error', function(e) {
console.log("Got error: " + e.message);
});
console.log('ccc'+data);
req.end();
}).listen(888);
console.log('Server start at 888');
然后再运行我们的node脚本 : node request2.js
最后访问我们的node服务地址: http://localhost:888
输出正常 ,ko,第一步踏出了,其他还有神马可怕的 哈哈哈哈

node 发送 post 请求 get请求。的更多相关文章
- 【node.js】GET/POST请求、Web 模块
获取GET请求内容 node.js 中 url 模块中的 parse 函数提供了这个功能. var http = require('http'); var url = require('url'); ...
- 使用java程序模拟页面发送http的post请求
在web应用程序中,一般都是通过页面发送http的post请求,但也可以使用java程序来模拟页面发送请求,代码如下: import java.io.BufferedReader; import ja ...
- [转]利用URLConnection来发送POST和GET请求
URL的openConnection()方法将返回一个URLConnection对象,该对象表示应用程序和 URL 之间的通信链接.程序可以通过URLConnection实例向该URL发送请求.读取U ...
- Jsoup系列学习(1)-发送get或post请求
简介 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据. 官 ...
- 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需 要获取认证信息(如Cookie),所以返回的是HttpWeb ...
- (转) 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
转自:http://blog.csdn.net/zhoufoxcn/article/details/6404236 通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中 ...
- iOS开发网络篇—发送GET和POST请求(使用NSURLSession)
iOS开发网络篇—发送GET和POST请求(使用NSURLSession) 说明: 1)该文主要介绍如何使用NSURLSession来发送GET请求和POST请求 2)本文将不再讲解NSURLConn ...
- Ajax详解及其案例分析------如何获得Ajax对象,使用Ajax对象发送GET和POST请求,校验用户名,POST和GET请求时的乱码处理,实现级联的下拉列表
本节主要内容预览: 1 获得Ajax对象 2 使用Ajax对象发送GET请求 3 使用Ajax对象发送POST请求 4 使用Ajax校验用户名 5 POST请求时的乱码处理 6 GET请求时的乱码处理 ...
- php 利用socket发送GET,POST请求
作为php程序员一定会接触http协议,也只有深入了解http协议,编程水平才会更进一步.最近我一直在学习php的关于http的编程,许多东西恍然大悟,受益匪浅.希望分享给大家.本文需要有一定http ...
- 【转】在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
http://zhoufoxcn.blog.51cto.com/792419/561934 这个需求来自于我最近练手的一个项目,在项目中我需要将一些自己发表的和收藏整理的网文集中到一个地方存放,如果全 ...
随机推荐
- [18/11/30] toString()方法 和 equals() 方法
一. toString() 方法 Object类中定义有public String toString()方法,其返回值是 String 类型 默认: return getClass().getNam ...
- javascript对字符串的常见操作trim,ltrim,rtrim,isEmpty,isFloat等
1.验证字符串是否为空格.是否包含非法字符. //验证是否字符串有非法字符 function v_invalide_char(value,msg){ var arr = ['#','@','!','$ ...
- HTML5之表单新增类型介绍
1.html5的input标签的type类型新增介绍: 2.表单新增属性介绍: 3.代码示例: <!doctype html> <html> <head></ ...
- 【题解】洛谷P1731 [NOI1999] 生日蛋糕(搜索+剪枝)
洛谷P1731:https://www.luogu.org/problemnew/show/P1731 思路 三重剪枝 当前表面积+下一层表面积如果超过最优值就退出 当前体积+下一层体积如果超过总体积 ...
- 【Linux-CentOS】【转-更正】使用CentOS DVD1 和DVD2做本地yum源
原文在此.此文写的非常好,怕网络丢失,特转来,并做了更正. CentOS6以上版本一般都会提供一个DVD1和一个DVD2镜像,使用DVD1即可安装使用CentOS了,DVD2中存放了一些额外的软件包, ...
- centOS 7 更改root密码
Linux忘记密码怎么办,不用重装系统,进入emergency mode 更改root密码即可. 首先重启系统,按下 向下 按钮, 定位在第一个,摁 e ,进行编辑 找到 ro , 把ro改为 rw ...
- JavaScript-语法专题
一.数据类型的转换 概述 JavaScript是一种动态语言,变量没有类型限制,可以随时赋予任意值 强制转换:主要是值Number(),String(),Boolean三个函数 Number函数,可以 ...
- Sass 基础(六)
join() 函数 join()函数是将两个列表连接合并成一个列表. >>join(10px 20px, 30px 40px) (10px 20px 20px 40px) >> ...
- java.util.ArrayList,java.util.LinkedList,java.util.Vector的区别,使用场合.
下图是Collection的类继承图 从图中可以看出:Vector.ArrayList.LinkedList这三者都实现了List 接口.所有使用方式也很相似,主要区别在于实现方式的不同,所以对不同的 ...
- Cacti 学习笔记
Cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户.因此,snmp和rrdto ...