导航:首页 > 编程语言 > js如何创建http请求

js如何创建http请求

发布时间:2025-06-15 16:38:48

❶ nodejs 怎样创建一个http长连接的客户端

默认情况下,NodeJS HTTP 服务器对每个客户端的Web Request的连接时长是2分钟,也就是说,一旦2分钟内,你服务器端没有发送response,那么客户端的连接就会被关闭(重置?),在现实的应用中,我后台处理数据的时间可能很长,也许3分钟,也许5分钟,客户也愿意等待,那么我完全可以把连接时长设置的多一些。为了解决这个问题,我找了很久,网上大多数说的是怎么缩短timeout的时间,而且很多都是自己调用全局的setTimeout()函数来控制的,说nodeJs没有提供相应的API。直到昨天才发现,原来nodeJs的Http库,有一个setTimeout()的函数,可以解决这个问题,(我本机的,0.6版是没有这个函数的),这篇文章有提及: http://contourline.wordpress.com/2011/03/30/preventing-server-timeout-in-node-js/

说明:
调用nodeJs API, http.createServer()返回的Server对象,有一个setTimeout()方法,可以传入你想要的连接时长,默认是1200000(即2分钟),改成0表示不会timeout。而response对象,也有一个setTimeout()方法,我不知道两者有什么区别,但是我的理解是server.setTimeout()是全局的,response.setTimeout()只针对本次request。

代码
对于expressJs,相关代码是:
var server = http.createServer(app);
server.setTimeout(0);
server.listen(app.get('port'), function () {
console.log('Express server listening on port ' + app.get('port'));
});

对于restify,相关代码是:
server.server.setTimeout(0);
server.listen(8080, function () {
console.log('%s listening at %s', server.name, server.url);
});

❷ Nodejs中使用request

在Node.js中,处理HTTP请求是一项基础且重要的任务。本文将介绍如何使用request库,包括异步和同步请求的实现,以及如何在Node.js环境中构建和管理HTTP服务。

首先,我们来谈谈异步请求。使用request库,你需要进行以下步骤:

1. 安装request模块:`npm install request`

2. 对于GET和POST请求,异步request的用法有所不同。例如,发送GET请求:`request.get('http://example.com', callback)`,而POST请求则需要传递一个JSON对象:`request.post('http://example.com', {json: {key: 'value'}}, callback)`。

同步request的实现更为直接,如sync-request,但请注意,它可能不是最佳实践,因为它会阻塞Node.js事件循环。同步请求的安装和使用方法与异步类似,但返回的是完整的response对象。

在Node.js中,处理HTTP请求涉及到Request(req)和Response(res)对象。你可以通过`http`模块创建一个服务器,监听本地IP(127.0.0.1)或localhost。定义路由时,需要确定方法(GET或POST)、URL规则以及输入和输出的格式。例如,通过`req.method`和`req.url`获取请求方法和URL,然后进行相应的处理。

querystring在HTTP请求中扮演着传递参数的角色,它可以帮助解析URL中的查询字符串。虽然hash(#后面的内容)不能被服务器获取,但可以用于实现动态网页。数据的结构化和非结构化在编程中至关重要,尽量使用结构化的数据便于处理。

返回数据时,利用`res.writeHead()`设置状态码、内容类型和body。例如,返回JSON数据时,`res.end(JSON.stringify(data))`。对于HTML数据,需要设置`Content-type`为`text/html`。

获取Request Body时,由于数据通常是通过流传输的,你需要在浏览器接收完整内容后再进行处理。流可以用于处理视频或大文件,浏览器会自动接收并分段处理。

总的来说,Node.js中的HTTP请求处理涉及模块的安装、请求类型的区别、路由设置、参数解析、响应数据和流处理等环节。通过这些步骤,你可以有效地管理你的HTTP服务。

❸ HTML js怎么发送HTTP get请求

请参照下面的例子:

/*URL可以随意改*/

String uriAPI = "http://192.168.1.100:8080/test/test.jsp?u=wangyi&p=456";

/*建立HTTP Get对象*/

HttpGet httpRequest = new HttpGet(uriAPI);

try

{

/*发送请求并等待响应*/

HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);

/*若状态码为200 ok*/

if(httpResponse.getStatusLine().getStatusCode() == 200)

{

/*读*/

String strResult = EntityUtils.toString(httpResponse.getEntity());

/*去没有用的字符*/

strResult = eregi_replace("( | | | )","",strResult);

mTextView1.setText(strResult);

}

else

{

mTextView1.setText("Error Response: "+httpResponse.getStatusLine().toString());

}

}

catch (ClientProtocolException e)

{

mTextView1.setText(e.getMessage().toString());

e.printStackTrace();

}

catch (IOException e)

{

mTextView1.setText(e.getMessage().toString());

e.printStackTrace();

}

catch (Exception e)

{

mTextView1.setText(e.getMessage().toString());

e.printStackTrace();

}

阅读全文

与js如何创建http请求相关的资料

热点内容
R1的圆弧用数控怎么编程 浏览:259
brl格式的文件编辑器 浏览:91
安卓如何强制删除叙述性文件 浏览:409
g83怎么用增量编程 浏览:858
win8系统qq文件夹 浏览:41
什么app有大量的撩妹句子 浏览:78
支持java的手机浏览器 浏览:914
剑三修改文件损坏 浏览:638
获取指定文件的路径吗 浏览:370
ug装好编程模块无法用怎么回事 浏览:10
java你画我猜实验报告 浏览:819
pdf多个文件打印 浏览:107
如何压缩微信ppt文件 浏览:385
如何开设网络课程 浏览:363
ps如何提取单色文件 浏览:652
文件路径图片大全 浏览:33
怎么加入编程协会 浏览:491
modbus数据如何转换 浏览:399
辐射避难所安卓无限箱子 浏览:87
计算机编程从哪里开始 浏览:690

友情链接