Sie werden möglicherweise umgeleitet, wenn Sie eine URL anfordern. Ein Hinweis zum Abrufen der endgültigen umgeleiteten URL.
Verwenden Sie okhttp3 für die Bibliothek
Klasse, um die endgültige umgeleitete URL zu erhalten
RedirectFinalUrlResolver.java
package example;
import java.io.IOException;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class FinalUrlResolver {
private OkHttpClient mClient = new OkHttpClient.Builder()
.addNetworkInterceptor(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
return chain.proceed(chain.request());
}
})
.build();
public String get(String url) throws IOException {
final Response r = mClient.newCall(new Request.Builder().url(url).build()).execute();
return r.request().url().toString();
}
}
** Klasse ausführen **
Example.java
package example;
import java.io.IOException;
public class Example {
public static void main(String[] args) throws IOException {
FinalUrlResolver o=new FinalUrlResolver();
String url="https://qiita.com/settings/account";
String finalUrl=o.get(url);
System.out.println("original url="+url);
System.out.println("final url="+finalUrl);
}
}
Fügen Sie pom.xml Folgendes hinzu
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.13.1</version>
</dependency>
Als ich ** Example.java ** ausführte, erhielt ich die endgültige umgeleitete URL.
original url=https://qiita.com/settings/account
final url=https://qiita.com/login?redirect_to=https%3A%2F%2Fqiita.com%2Fsettings%2Faccount