浏览代码

代码优化

shimingxy 2 月之前
父节点
当前提交
44fce50319

+ 2 - 19
maxkey-starter/maxkey-starter-ip2location/src/main/java/org/dromara/maxkey/autoconfigure/IpLocationAutoConfiguration.java

@@ -21,7 +21,6 @@ import org.dromara.maxkey.ip2location.IpLocation;
 import org.dromara.maxkey.ip2location.IpLocationParser;
 import org.dromara.maxkey.ip2location.offline.GeoIP2V4;
 import org.dromara.maxkey.ip2location.offline.Ip2regionV2;
-import org.dromara.maxkey.ip2location.online.Ip138;
 import org.lionsoul.ip2region.xdb.Searcher;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -94,23 +93,7 @@ public class IpLocationAutoConfiguration {
 		return ipLocationOffLine;
 	}
 	
-	/**
-	 * builder Online Provider IpLocation
-	 * @param onlineProvider
-	 * @return IpLocation
-	 */
-	public IpLocation builderOnlineProvider(String onlineProvider) {
-		//need on line provider
-		IpLocation ipLocationOnLine = null;
-		if(onlineProvider.equalsIgnoreCase("none")) {
-			//do nothing
-			_logger.debug("IpLocation online Provider none");
-		}else if(onlineProvider.equalsIgnoreCase("Ip138")){
-			ipLocationOnLine = new Ip138();
-			_logger.debug("IpLocation online Provider Ip138");
-		}
-		return ipLocationOnLine;
-	}
+
 	
 	/**
 	 * IP转换区域地址解析
@@ -127,7 +110,7 @@ public class IpLocationAutoConfiguration {
 			@Value("${maxkey.login.iplocation.offline.provider:Ip2Region}") String offlineProvider) throws Exception {
         return new IpLocationParser(
         		isIplocation,
-				builderOnlineProvider(onlineProvider),
+				null,
 				builderOfflineProvider(offlineProvider)
 		);
 	}

+ 0 - 63
maxkey-starter/maxkey-starter-ip2location/src/main/java/org/dromara/maxkey/ip2location/online/Ip138.java

@@ -1,63 +0,0 @@
-/*
- * Copyright [2023] [MaxKey of copyright http://www.maxkey.top]
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.dromara.maxkey.ip2location.online;
-
-import org.dromara.maxkey.ip2location.AbstractIpLocation;
-import org.dromara.maxkey.ip2location.IpLocation;
-import org.dromara.maxkey.ip2location.Region;
-import org.dromara.maxkey.util.JsonUtils;
-import org.jsoup.Jsoup;
-import org.jsoup.nodes.Document;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Ip138查询ip地址
- * 
- * @author Crystal.Sea
- *
- */
-public class Ip138 extends AbstractIpLocation implements IpLocation{
-	static final  Logger _logger = LoggerFactory.getLogger(Ip138.class);
-	
-	public static final String REGION_URL = "https://www.ip138.com/iplookup.asp?ip=%s&action=2";
-	
-	public static final String BEGIN 	= "\"ip_c_list\":[";
-	public static final String END 		= "], \"zg\":0};";
-	
-	@Override
-	public Region region(String ipAddress) {
-		try {
-			Document doc;
-			doc = Jsoup.connect(String.format(REGION_URL, ipAddress))
-					.timeout(TIMEOUT)
-					.userAgent(USERAGENT)
-					.header("Host", "www.ip138.com")
-					.header("Referer", "https://www.ip138.com/")
-					.header("sec-ch-ua", "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"98\", \"Google Chrome\";v=\"98\"")
-					.header("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9")
-					.get();
-			String htmlData = doc.toString();
-			_logger.trace("html {}",htmlData);
-			String jsonData = htmlData.substring(htmlData.indexOf(BEGIN) + BEGIN.length() , htmlData.indexOf(END));
-			Ip138Response response = JsonUtils.stringToObject(jsonData, Ip138Response.class);
-			return response == null ? null : new Region(response.getCt(),response.getProv(),response.getCity(),getLocation(response.toString()));
-		} catch (Exception e) {
-			_logger.error("Exception ",e);
-		}
-		return null;
-	}
-}

+ 0 - 81
maxkey-starter/maxkey-starter-ip2location/src/main/java/org/dromara/maxkey/ip2location/online/Ip138Response.java

@@ -1,81 +0,0 @@
-/*
- * Copyright [2023] [MaxKey of copyright http://www.maxkey.top]
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.dromara.maxkey.ip2location.online;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-
-/**
- * Ip138返回结果
- * 
- * @author Crystal.Sea
- *
- */
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class Ip138Response {
-
-	String ct;
-	String prov;
-	String city;
-	String area;
-	String yunyin;
-	
-	public Ip138Response() {
-	}
-	public String getCt() {
-		return ct;
-	}
-	public void setCt(String ct) {
-		this.ct = ct;
-	}
-	public String getProv() {
-		return prov;
-	}
-	public void setProv(String prov) {
-		this.prov = prov;
-	}
-	public String getCity() {
-		return city;
-	}
-	public void setCity(String city) {
-		this.city = city;
-	}
-	public String getArea() {
-		return area;
-	}
-	public void setArea(String area) {
-		this.area = area;
-	}
-	public String getYunyin() {
-		return yunyin;
-	}
-	public void setYunyin(String yunyin) {
-		this.yunyin = yunyin;
-	}
-	
-	@Override
-	public String toString() {
-		StringBuilder builder = new StringBuilder();
-		builder.append(ct)
-			   .append(prov)
-			   .append(city)
-			   .append(area)
-			   .append(" ")
-			   .append(yunyin);
-		return builder.toString();
-	}
-	
-	
-}

+ 0 - 31
maxkey-starter/maxkey-starter-ip2location/src/test/java/org/dromara/maxkey/ip2location/IpRegionIp138Test.java

@@ -1,31 +0,0 @@
-/*
- * Copyright [2023] [MaxKey of copyright http://www.maxkey.top]
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.dromara.maxkey.ip2location;
-
- 
-import org.dromara.maxkey.ip2location.online.Ip138;
-import org.junit.Test;
-
-public class IpRegionIp138Test {
-	
-	@Test
-	public void test(){
-		IpLocation ipRegion = new Ip138();
-		System.out.println(ipRegion.region("117.155.70.59"));
-	}
-	
-}

+ 0 - 33
maxkey-starter/maxkey-starter-ip2location/src/test/java/org/dromara/maxkey/ip2location/IpRegionParserTest.java

@@ -1,33 +0,0 @@
-/*
- * Copyright [2023] [MaxKey of copyright http://www.maxkey.top]
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *     http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.dromara.maxkey.ip2location;
-
-import org.dromara.maxkey.ip2location.online.Ip138;
-import org.junit.Test;
-
-public class IpRegionParserTest {
-
-	@Test
-	public void test(){
-		System.out.println(
-				new IpLocationParser().region("127.0.0.1")
-				);
-		
-		System.out.println(
-				new IpLocationParser(true,new Ip138(),null).region("117.155.70.59")
-				);
-	}
-}