千家信息网

Http API笔记

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,目前接触到的网络连接API有:一、HttpURLConnection四要素:1、URL 2、HttpURLConnection 3、outputStream 4、inputStreamuri.open
千家信息网最后更新 2024年11月11日Http API笔记

目前接触到的网络连接API有:

一、HttpURLConnection

四要素:1、URL 2、HttpURLConnection 3、outputStream 4、inputStream

uri.openConnection(); //获得HttpURLConnection.

hc.setDoInput(true); //允许输入

hc.setDoOutput(true); //允许输出

hc.setRequestMethod("POST");//设置为post

hc.setUseCaches(false); // post不使用缓存

hc.setConnectTimeout(3000); //设置连接超时

hc.setReadTimeout(3000); //设置读取超时

hc.setRequestProperty("Content-Type","application/x-www-form-urlencoded");

hc.setRequestProperty("Charset","UTF-8");

os = hc.getOutputStream(); //获得输出流

os.write(vals);

os.flush();

if (hc.getResponseCode() == HttpURLConnection.HTTP_OK)

is = hc.getInputStream(); //获得输入流

通过URL得到HttpURLConnection。

通过HttpURLConnection得到outputStream和inputStream。

二、HttpClient

四要素:1 、HttpParams 2、HttpClient 3、HttpPost/HttpGet 4、HttpEntity 5、HttpResponse

BasicHttpParams httpParams = new BasicHttpParams();

HttpConnectionParams.setConnectionTimeout(httpParams,

3000);

HttpConnectionParams.setSoTimeout(httpParams,3000);

HttpClient client = new DefaultHttpClient(httpParams);

HttpPost post = new HttpPost("http://");

post.setHeader();

post.setEntity();

HttpResponse response = client.execute(post);

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

response.getEntity();

注意: HttpEntity 要使用恰当的类

常用 new ByteArrayEntity(content.getBytes("UTF-8"))

UrlEncodedFormEntity //键值对列表



注意:Content-Type

Text:用于标准化地表示的文本信息,文本消息可以是多种字符集和或者多种格式的;

Multipart:用于连接消息体的多个部分构成一个消息,这些部分可以是不同类型的数据;

Application:用于传输应用程序数据或者二进制数据;

Message:用于包装一个E-mail消息;

Image:用于传输静态图片数据;

Audio:用于传输音频或者音声数据;

Video:用于传输动态影像数据,可以是与音频编辑在一起的视频数据格式。


HTML 5

enctype 属性

enctype 属性规定在将表单数据发送到服务器之前如何对其进行编码。

application/x-www-form-urlencoded 在发送前对所有字符进行编码(默认)。

multipart/form-data 不对字符编码。当使用有文件上传控件的表单时,该值是必需的。

text/plain 将空格转换为 "+" 符号,但不编码特殊字符。



0