如何在主java中使用OKHTTP
这是一个简单的GET方法: 我把这段代码放在主java文件中 那么我应该在哪里调用onCreate方法呢如何在主java中使用OKHTTP,java,android,http,okhttp,Java,Android,Http,Okhttp,这是一个简单的GET方法: 我把这段代码放在主java文件中 那么我应该在哪里调用onCreate方法呢 我不知道怎么用它。例如,我想在按钮的onclicklistener中使用它。如果使用eclipse,则必须下载okHttp jar文件并将其包含在项目中;如果使用android studio,则必须在build.gradle中添加依赖项。你可以在这里找到说明- 最好创建一个用于联网的公共Util类,并编写HTTP请求GET、POST等公共方法,以便只需传递所需的参数就可以从应用程序中的任何位
我不知道怎么用它。例如,我想在按钮的onclicklistener中使用它。如果使用eclipse,则必须下载okHttp jar文件并将其包含在项目中;如果使用android studio,则必须在build.gradle中添加依赖项。你可以在这里找到说明- 最好创建一个用于联网的公共Util类,并编写HTTP请求GET、POST等公共方法,以便只需传递所需的参数就可以从应用程序中的任何位置调用它们 现在,如果需要,可以将其添加到onclicklistener上 示例-
public class GetExample {
OkHttpClient client = new OkHttpClient();
String run(String url) throws IOException {
Request request = new Request.Builder()
.url(url)
.build();
Response response = client.newCall(request).execute();
return response.body().string();
}
public static void main(String[] args) throws IOException {
GetExample example = new GetExample();
String response = example.run("https://raw.github.com/square/okhttp/master/README.md");
System.out.println(response);
}
}
对于onClickListener,您可以在AsyncTask或新线程中编写以下代码,我希望您知道如何编写AsyncTask或新线程-
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.build();
Response response = client.newCall(request).execute();
String reponse = response.body().string();
非常感谢。我应该在onclicklistener中写什么?编辑了答案,请勾选例如我想在按钮的onclicklistener中使用它。那你为什么不把密码放在那里?@timcastelijs我有个错误。我以前使用的请求没有函数,但仍然在logcat和dieing应用程序中给出错误。那么,错误是什么?NetworkOnMainThreadException?@TimCastelijns是的。我想它需要一根线。是吗?是的,你不能在主线程上使用网络,你需要使用异步任务或类似的东西。谷歌一下,你就会找到答案
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.build();
Response response = client.newCall(request).execute();
String reponse = response.body().string();