温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Http API笔记

发布时间:2020-06-21 20:38:25 来源:网络 阅读:302 作者:wangkai217 栏目:网络安全

目前接触到的网络连接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 <form> enctype 属性

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

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

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

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


        

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI