导航:首页 > 编程语言 > 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请求相关的资料

热点内容
sr100怎么编程序 浏览:795
苹果手机怎样保存信息 浏览:379
安卓patch是什么文件 浏览:819
2003word审阅 浏览:387
手机时间查找新文件 浏览:695
数据库管理员怎么入行 浏览:852
安卓nba2k17修改能力 浏览:868
win10设置nsf文件共享 浏览:445
同一个网站怎么发文章 浏览:725
苹果翻盖手机多少钱 浏览:815
flash80金鹰教程 浏览:374
怎么把美国的app账号换成中国的 浏览:375
贷款60秒app 浏览:408
捷安特骑行app有什么奖励 浏览:542
网站图片展示代码 浏览:167
asp找回密码 浏览:836
如何知道别人使用我的电脑和看了什么文件 浏览:712
prcs4视频导出后找不到文件 浏览:977
msp430系列单片机实用c语言程序设计 浏览:423
移动硬盘的文件格式 浏览:904

友情链接