android中网络请求url地址部分的写法

新版界面的一些感受

写博客的界面又变化了,感觉更加的舒服了。不像原来界面那样单一了,在一个界面上就能填写关于文章的好多信息,感觉体验有了一点提高。不错,表扬一下!


背景

项目不可避免会用到网络这一块的东西,然后需要根据接口地址来获取数据。那么根据一个给定url地址的请求,你应该把url分为几部分去拼接


URL的百度百科

在这里我就说说我的做法,一些概念性的东西大家想要了解的话可以点击我,我是URL百度百科,可以让大家了解一些基础的知识。


网络请求时GET的写法

比如一个url地址如下所示:

http://192.168.1.2:8888/wcs/robotAct?robotId=1&act=up

如果你用的是get请求,url直接拼接起来就可以了,如下所示:

String url = getResources().getString(R.string.url_root) + getResources().getString(R.string.url_carMoveOneGrid) + "robotId=" + robotId + "&act=" + act;

上面代码片段中引用的string资源如下:

<!-- 接口地址-->
    <string name="url_root">http://192.168.1.2:8888/wcs/</string><!-- 接口地址的协议、服务器地址和相同大路径部分-->
    <string name="url_resendThePath">resendOrder?</string><!-- 重发路径-->
    <string name="url_carMoveOneGrid">robotAct?</string><!-- 小车移动一格-->

在代码片段中大家可以看到我分了三个部分来实现get请求时url地址的写法:

第一部分:协议,ip地址(:端口号)和路径中的一些相同的路径,即http://192.168.1.2:8888/wcs/部分


第二部分:具体的路径,这时候不同的url地址是不一样的,即robotAct?部分


第三部分就是代码拼接起来,这里就不多说了,大家都知道怎么拼

这里有的读者会想,你为什么第一部分要加/wcs进去呢?直接用http://192.168.1.2:12009,把/wcs放到第二部分去不可以吗?当然可以啊!但是你有没有想过,如果你将来部署到其他地址,恰巧/wcs这块发生了变化,不是/wcs了,而是其他的路径,那么你不是还要对每个具体的路径做修改吗?所以我将路径部分的相同路径也放到第一部分来写,这样就不怕路径发生的变化了。当然我只是说一下我这种写法有什么好处,具体项目可能会不一样,大家参考即可。


网络请求时POST的写法

一般url地址都可以分为这几部分:协议、IP地址(有的有端口)、路径、询问部分。

协议部分:http
它告诉浏览器如何处理将要打开的文件。最常用的模式是超文本传输协议(Hypertext Transfer Protocol,缩写为HTTP),这个协议可以用来访问网络。


ip地址部分:192.168.1.2:8888
服务器的名称或IP地址后面有时还跟一个冒号和一个端口号。它也可以包含接触服务器必须的用户名称和密码。


路径部分:/wcs/robotAct?
路径部分包含等级结构的路径定义,一般来说不同部分之间以斜线(/)分隔。


询问部分:参数robotId和act
询问部分一般用来传送对服务器上的数据库进行动态询问时所需要的参数。

这里简单的说了一下url地址的一些组成部分。用post提交请求的时候就要关注询问部分了,你需要将robotId和act两个参数用map组装一下,调用请求框架的post方法,重载方法的时候参数使用组装的map对象(我用的post请求都是如此)即可。

====================================

A little bit of progress every day!Come on!

相关文章
相关标签/搜索