郑嘉涛 华南师范大学
在现代社会中,互联网的重要性不言而喻,据《中国互联网发展报告2017》显示,2016年中国数字经济总量达到22.6万亿元,跃居全球第二,占GDP比重达30.3%,成为经济增长的新引擎和新亮点。因此,互联网仍然具有巨大的生机。本文主要论述互联网的体系中HTTP协议及使用JAVA构建HTTP Server。
HTTP协议是Web中B/S架构最重要的部分之一,它定义了客户机与服务器间的通信的方法,最常用的方法就是GET、和POST,我们常使用GET方法来向服务器请求,使用POST方法来向服务器提交或者上传。在HTTP协议中还有统一资源定位符URL,它是对互联网上的资源的位置以及访问方法的一种简洁的表示,用来描述互联网上的文件。
互联网上有多种常见的服务器框架,例如著名的Apache Tomcat、Nginx等,那么为什么我们要使用JAVA的原生api来建立HTTP Server呢,因为尽管框架很多,但是基础是类似的,而如果只是不断的使用框架,那么我们是无法理解框架的本质的,因此我们需要使用原生api来建立HTTP Server。
建立HTTP Server的方式有多种,这里采用了JAVA语言,因为JAVA语言是我们最一门设计良好的优秀的跨平台语言,且JAVA在移动平台上也得到了广泛的应用,因此使用JAVA来建立HTTP Server,可以方便的在不同平台上迁移,实现良好的跨平台效果。
在PC上建立时我们可以使用127.0.0.1的环回地址进行测试,而在android上则可以使用如下代码来获取android设备的局域网地址,使用局域网地址和处于同一个局域网的电脑主机进行测试。
public static String getLocalIpStr(Context context){
WifiManagerwifiManager=(WifiManager)context.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo=wifiManager.getConnectionInfo();
return intToIpAddr(wifiInfo.getIpAddress());
}
private static String intToIpAddr(int ip){
return (ip & 0xFF)+"."+ ((ip>>8)&0xFF) + "."+((ip>>16)&0xFF) + "."+ ((ip>>24)&0xFF);
}
基础的HTTP Server中我们只需要实现GET方法和POST方法就可以建立起一个HTTP Server了。GET方法用……