最近在学习做网站开发,有一个小功能需要记录并显示文章的阅读数量。
我想出来的方案是,服务器接到浏览器的阅读文章的请求时,从DB里面读取文章当前的阅读数量N,并返回N 1作为文章的阅读数量。浏览器在加载网页完毕后,发送请求到服务器告诉服务器文章打开成功,服务器将DB里保存的当前阅读数量从N修改为N 1。
作为一个有多年CRUD经验的程序员,服务端的实现对我来说没有任何难度。但是对于如何让网页给服务器发送HTTP请求却没有任何经验。
现将网页中发送HTTP请求的方法归纳总结如下:
通过表单Form对象的submit方法可以用来提交表单。Form表单提交的时候会向server发送http请求。
<form id='demo' action='/Blog/access/3' method='get'></form>
<script>
document.getElementById('demo').submit();
</script>
使用AJAX
加入如下代码,在页面加载完成后向服务器发送http请求
<script>
function reportAccess(){
var xmlHttp;
if(window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
else
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlHttp.open("GET", "/Blog/access/3", true);
xmlHttp.send();
};
window.onload = reportAccess;
</script>
使用表单的方式会引起整个页面的刷新,由于我并不需要页面的刷新。所以AJAX方式更适合我的需求。