gpt4 book ai didi

android - 带有 WebView 的 HttpClient

转载 作者:行者123 更新时间:2023-11-29 14:05:57 24 4
gpt4 key购买 nike

我正在使用 httpclient 在 webView 中使用 loadDataWithBaseURL 显示网页。我的网站有一些链接,我想在用户单击链接时继续使用 httpClient。有可能吗?在这种情况下,当用户单击链接时,我必须拦截该链接,以便我的浏览器加载它,然后停止加载它并使用 HttpGet。听起来够合理吗?

编辑:是的,那是个好主意..首先你设置一个客户端

comments.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url){

String LinkTag = "";
try {
LinkTag = client.httpGet(url);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

comments.loadDataWithBaseURL("BaseWebUrl", LinkTag, "text/html", "utf-8", "");
return true;
}
});

其次,您必须创建一个 httpClient 来处理您的 Posts 和 Gets 以及其他方法

最佳答案

您需要做的是在您调用 HttpClient hc = new DefaultHttpClient(); 之后,在您使用它的第一个 Activity 或类中将其设置为公共(public)静态变量。然后当用户点击链接,您必须调用 HttpGet,您只需设置 new HttpClient newName = originalClass.hc;,这将存储您的 cookie。

public class FirstClass{  
public static HttpClient hc = new DefaultClient();
{make the original get call}

public class NewClass{
//new httpclient
{HttpClient newHC = FirstClass.hc;}

关于android - 带有 WebView 的 HttpClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6993672/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com