http发送get请求的总结
来源:互联网 发布:我打打单软件 编辑:程序博客网 时间:2024/06/10 12:09
1.首先得用到WSADATA的东西(头文件如#include <winsock.h>)。
WSADATA wsaData;WORD wVersionRequested = MAKEWORD(1,1);int nRet;nRet = WSAStartup(wVersionRequested, &wsaData);if (nRet){fprintf(stderr,"\nError initializing WinSock\n");return ;}if (wsaData.wVersion != wVersionRequested){fprintf(stderr,"\nWinSock version not supported\n");return ;}
2.发送的数据请求的头数据包如下:
strSend += " HTTP/1.0\r\n";
strSend += "Host: " + strHost + "\r\n";
strSend += "Accept: */*\r\n";
strSend += "Accept-Language: zh-cn\r\n";
// strSend += "Accept-Encoding: gzip, deflate\r\n";//update by
strSend += "User-Agent: Mozilla/4.0\r\n";
3.如果的数据小的话,就不需要采用压缩的方式。如果数据的文件过大就需要采用压缩数据的方式发送请求.
strSend += " HTTP/1.0\r\n";
strSend += "Host: " + strHost + "\r\n";
strSend += "Accept: */*\r\n";
strSend += "Accept-Language: zh-cn\r\n";
strSend += "User-Agent: Mozilla/4.0\r\n";
4.原因如下:
Accept-Encoding: gzip,deflate
IE和我们的代码使用的HTTP头里面都有这条内容,将这条内容删掉我得到了正确的结果。原因如下:
这条信息代表本地可以接收压缩格式的数据,而服务器在处理时就将大文件压缩再发回客户端,IE在接收完成后在本地对这个文件又进行了解压操作,所以文件内容是正确的。而在我们的代码里是将这些内容直接存入文件,不存在解压缩的过程,所以Size变小,内容也不一样。
细心的人可以发现在,IE在Down某一个比较大一点的东西时,Down的过程中显示的大小,比Down下来实际大小要小,这就是因为在接收的过程中接收的是压缩文件,而存到本地后的文件当然要大一些了哈~~
- http发送get请求的总结
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- 发送Http请求(POST GET)的方法
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- Spring+Hibernate配置多数据源
- 【Matlab】数据降维工具箱drtoolbox
- INF SourceDisksNames Section 和 SourceDisksFiles Section详解
- Linux 学习笔记
- 348 - Optimal Array Multiplication Sequence
- http发送get请求的总结
- ScrollView或者ListView中嵌套ViewPager,展示不出来问题。
- cvSVD(&A, &U, &S, &V, CV_SVD_U_T);
- 分享一个java写的简单计算器
- SSH 配置
- 把某某XX文件夹的下得文件拷贝到任意磁盘目录下
- linux下字符串和整型互转
- VMware 安装 ubuntu
- Eclipse java swing开发环境