1,后端代码
@RequestMapping(value = "/domainIsAvailable", method = RequestMethod.POST, produces = MediaType.TEXT_PLAIN_VALUE)
public @ResponseBody
String domainIsAvailable(String json){
List<String> documentList = new ArrayList<String>();
List list= JSON.parseArray(json);
if(!Util.isNvl(list)){
for(int i=0; i<list.size(); i++){
boolean result = this.domainAvailable(list.get(i).toString());
if(result==true){
documentList.add("<li class=\"yes\">" +
"<div class=\"lrbox1 f16\">"+list.get(i).toString()+"</div>" +
"<div class=\"lrbox1 jg\"><i class=\"iconfont icon-checkmarkcircle orange\"></i><i class=\"iconfont icon-roundclose green\"></i>恭喜你,此域名可以注册!</div>" +
"</li>");
}else{
documentList.add("<li class=\"no\">" +
"<div class=\"lrbox1 f16\">"+list.get(i).toString()+"</div>" +
"<div class=\"lrbox1 jg\"><i class=\"iconfont icon-checkmarkcircle orange\"></i><i class=\"iconfont icon-roundclose green\"></i>很抱歉,此域名已被注册!</div>" +
"</li>");
}
}
}
return JSON.toJSONString(documentList);
}
/**
* 判断一个域名是否已被注册,用的万网的接口
* 这里采用的单线程,因为是免费的接口,所以线程过大容易被封IP
* @param domain 待检测域名,如:baidu.com
* @return 是否可以注册
* */
private boolean domainAvailable(String domain){
boolean hasRegistered = false; //该域名是否被注册
try {
URL url = new URL("http://panda.www.net.cn/cgi-bin/check.cgi?area_domain=" + domain);
java.net.HttpURLConnection connection = (java.net.HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(10000); //毫秒
connection.setReadTimeout(5000);
InputStream inputStream = new BufferedInputStream(connection.getInputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line = ""; //每次读取一行数据
String reg = "<original>(.*?)</original>"; //正则
while((line = reader.readLine()) != null){
if(line.matches(reg)){
// System.out.println(line);
//只有两种状态,210表示可用,211表示不可用
String state = line.substring(10, 13);
if("211".equals(state)){
hasRegistered = false;
}else{
hasRegistered = true;
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
return hasRegistered;
}
2,前端处理返回结果
var param = {};
param['json'] = JSON2.stringify(userids);
$.ajax({
url: "<c:url value='/admin/domain/checkdomain'/>",
data : param,
datatype : "json",
type : "post",
success: function(data){
var bodyData="";
var jsondataA = JSON.parse(data.split(','));//把json转成js
for(var w=0; w<jsondataA.length;w++){
bodyData+=jsondataA[w];
}
layer.open({
type: 1,
title: '你想要的标题',
maxmin: true,
shadeClose: true, //点击遮罩关闭层
area : ['620px' , '400px'],
content:
'<div class="searchdomainnamejieguo clearfix"><ul> <li class="titbg"> <div class="lrbox1">名称</div> <div class="lrbox1">状态</div> </li> </ul>'+
'<ul>'+
bodyData
+'</ul>'
+'</div>'+
'<div class="text_center gray main_top2">;联系我们</div>'
});
}
});