今天搞12306抢票, 在用CURL模拟POST请求校验验证码时, 无论如何12306都返回零, 正常应该返回True或者False, 最后查找原因如下

  只是请求头 Content-Type 用了 application/x-www-form-urlencoded, 但是验证码值(类似坐标"xxx,yyy")没有用urlencode转码

注意事项:

  1.CURL的POST请求方式, 默认为multipart/form-data

  2.如果POST请求中有文件, 则Content-Type应该设置为multipart/form-data, 可以不对请求数据进行urlencode(可以使用http_build_query函数快速创建)

  3.如果POST请求中无文件, 则Content-Type应该设置为application/x-www-form-urlencoded, 如果有特殊字符, 由于有部分浏览器不兼容, 所以需要对请求数据进行urlencode(可以使用http_build_query函数快速创建)

  即在没有需要上传文件的情况下, 尽量对 POST 提交的数据进行 http_build_query 处理, 然后再发送出去, 能实现更好的兼容性, 更小的请求数据包

最新文章

  1. Python学习06——列表的操作(2)
  2. jdbc应用程序连接Oracle rac的URL写法:
  3. jQuery焦点不在输入框内判断不能为空
  4. gdb多进程调试
  5. apache.http.MalformedChunkCodingException: Chunked stream ended unexpectedly
  6. Borg Maze(MST & bfs)
  7. return、 return false的用法
  8. IntelliJ远程调试教程
  9. Linux内核监控模块-0-开篇简介
  10. iOS开发集成微信支付
  11. m元素集合的n个元素子集
  12. 温故而知新——map
  13. HashMap 构造函数
  14. Linux文件锁定保护命令chattr介绍
  15. 算法 BF算法
  16. 有屏幕的地方就有BadApple!!
  17. 2018 Multi-University Training Contest 5
  18. Windows Server 2008 R2之管理Sysvol文件夹
  19. tred_extract_EDED_new
  20. scrapy中ROBOTSTXT_OBEY = True的相关说明

热门文章

  1. Nessus home与Nexpose community 对比
  2. UVA Rails(stl-stack)
  3. Gitlab运维
  4. IO 概括
  5. 检测密码 Exercise06_18
  6. 将千克转换成磅 Exercise05_03
  7. IO流--字符流缓冲技术
  8. Asp.Net MVC part3 路由Route
  9. Mac Sublime Text 3 配置Python环境及安装插件
  10. Matlab设置Legend横排、分块