大伙都知道利用JAVA的net包的URL类和 URLConnection可以得到网页源代码(这个应该是蜘蛛程序的锥形吧),但是向网页发送数据怎么办呢,GET请求很好处理,直接在网址后面加参数就可以了,但是可不可以向网页中发送POST请求呢,注册程序就是我们在点击提交按钮后往指定页面发送POST请求以便送往数据库

本例就来做个演示,往一个数据库里不断发送注册请求

import java.net.*;

import java.io.*;

import java.util.Locale;

class Test

{

public static void main(String[] args)

{

try

{

//用于注册的用户名 密码 问题 答案临时变量

String temp="renyanwei";

//就注册10个吧,别太过火了

for (int i=1;i<10;i++)

{

String urlstr="http://www.88wanmei.cn/register.php";

URL url=new URL(urlstr);

URLConnection conn=url.openConnection();

//这里是关键,表示我们要向链接里输出内容

conn.setDoOutput(true);

//获得连接输出流

OutputStreamWriter out=new OutputStreamWriter(conn.getOutputStream());

//这里是我定义了一组账号信息,字段+数据

String str=String.format(Locale.CHINA,"login=%s&&passwd=%s&&repasswd=%s&&Prompt=%s&&answer=%s&&email=%s",

temp+i,temp+i,temp+i,temp+i,temp+i,"ren@ren.com");

//把数据写入

out.write(str);

out.flush();

out.close();

//到这里已经完成了,不过我们还是看看返回信息吧,他的注册返回信息也在此页面

BufferedReader reader=new BufferedReader(new InputStreamReader(conn.getInputStream()));

String line=null;

int lineNum=1;

while((line=reader.readLine())!=null)

{

++lineNum;

//为什么只输出174行呢,因为这一行才是返回信息嘛,要其他的没用

if(lineNum==174)

System.out.println(line);

}

}

}

catch (Exception x)

{

System.out.println(x.toString());

}

}

}

返回信息

用户 yanwei1 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei2 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei3 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei4 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei5 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei6 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei7 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei8 注册成功!,请10分钟后重新上线查收元宝。

用户 yanwei9 注册成功!,请10分钟后重新上线查收元宝。

总结:为什么我们可以这么肆无忌惮的玩弄人家,最重要的原因是什么?无验证码!

通过这个程序只是想劝告大家,以后做网页可一定要注意这一点儿啊,不然碰到别有用心的人可不好玩儿啊

java post 注册_利用JAVA发送POST请求(垃圾注册就是这么产生的) | 学步园相关推荐

  1. java 实现网络通信_利用Java怎么样实现网络通信功能

    利用Java怎么样实现网络通信功能 发布时间:2020-11-20 15:19:04 来源:亿速云 阅读:72 作者:Leah 利用Java怎么样实现网络通信功能?相信很多没有经验的人对此束手无策,为 ...

  2. java远控_利用Java实现远程控制

    利用 Java 实现远程控制 摘 要: 介绍了远程控制地原理 , 详细地叙述了利用 Java 实现远程控制软件地程序设计方法和要点 , 并给出了要点地具体实现方法 . 关键词: 远程控制: Java ...

  3. java jmap 分析_利用java虚拟机的工具jmap分析java内存情况

    有时候碰到性能问题,比如一个java application出现out of memory,出现内存泄漏的情况,再去修改bug可能会变得异常复杂,利用工具去分析整个java application 内 ...

  4. java 刷新界面_利用java如何实现在删除信息后刷新页面功能

    利用java如何实现在删除信息后刷新页面功能 发布时间:2020-11-17 14:25:49 来源:亿速云 阅读:74 作者:Leah 这篇文章给大家介绍利用java如何实现在删除信息后刷新页面功能 ...

  5. java invoke 泛型_利用Java反射机制和泛型,全自动解析json

    有啦这个简直,太爽啦, 利用Java 反射机制,利用Class 就可以得到 类的 变量  Field[] fields=cls.getDeclaredFields(); 还可以通过类中 的方法名字 去 ...

  6. java游戏循环_利用Java循环语句实现攻击防御塔小游戏

    /* * 时间:2018-3-21 * 目的:practice * 内容:利用Java循环语句实现攻击防御塔小游戏 * 使用Java while语句实现一个英雄攻击防御塔的小程序,防御塔血量总计100 ...

  7. java 发送邮件昵称_利用JavaMail发送QQ邮件

    一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔. 邮件头包含的内容有: from字段 ...

  8. java实现浏览器_利用Java实现网页浏览器

    使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩.但是在JAVA里面,却几乎是不可能实现的任务. JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量, ...

  9. java 全双工服务器_利用Java实现串口全双工通讯_JAVA实例教程_IT部落

    本文介绍了一个简单的通过串口实现全双工通讯的Java类库,该类库大大的简化了对串口进行操作的过程 一个嵌入式系统通常需要通过串口与其主控系统进行全双工通讯,譬如一个流水线控制系统需要不断的接受从主控系 ...

最新文章

  1. 【牛客网】牛客练习赛19 F 算式子【数学--递推 、前缀、数字】
  2. Android运行报错avd,Android Studio出错:无法在模拟器中启动AVD
  3. 通过javascript改变form提交的action,实现不同的按钮向不同的action提交同一个form的数据
  4. ios添加设备真机测试,以及Undefined symbols for architecture x86_64:''错误
  5. 计算机学院肖鹏,肖鹏-生命科学与技术学院
  6. 160 - 2 Afkayas.1
  7. Spring的AOP-AspectJ注解方式
  8. c#app.config配置文件使用
  9. enclosing type java_Java ResolvedJavaType.getEnclosingType方法代码示例
  10. 20190905每日一句
  11. 算法洗脑系列(8篇)——第四篇 枚举思想
  12. 基于体素的全局光照技术
  13. 钉钉和mis系统对接调研
  14. 江苏省普通话水平测试计算机评分细则,江苏省普通话水平测试评分细则(试行).doc...
  15. 机器学习之One-Hot Encoding详解
  16. Keras天坑:想当然的对层的直接运算带来的问题
  17. matlab斐波那契数列画图,斐波拉契数列 斐波那契数列 matlab程序
  18. 科学计算机隐藏功能,经常用手机计算器的抓紧看看,原来还隐藏着3个功能,涨知识了...
  19. 大恒相机开发问题(错误码: -8)无法打开相机
  20. netbean 偶尔无法设置断点问题

热门文章

  1. JS动态修改页面EasyUI datebox不生效、EasyUI动态添加Class、EasyUI动态渲染解析解决方案
  2. html2canvas+jspdf 完美解决html导出且分页 解决图片显示不全问题
  3. Connection reset原因分析和解决方案
  4. Oracle中用户和架构之间的区别?
  5. 如何制作圆角布局..?
  6. Gradle中的实现和编译之间有什么区别?
  7. Android:如何使用资源名称从资源中获取字符串?
  8. JavaScript中的(内置)方式来检查字符串是否为有效数字
  9. 将当前的Git分支设为主分支
  10. Python基础-高级变量类型