public void doGet(View view)
{
Request.Builder builder = new Request.Builder();
Request request = builder.get().url(urlString + "userName=pby&userPassword=123").build();
Call newCall = mOkHttpClient.newCall(request);
//newCall.execute()
newCall.enqueue(new Callback() {
@Override
public void onFailure(Request request, IOException e) {
L.e("失败了");
}
@Override
public void onResponse(Response response) throws IOException {
String string = response.body().string();
L.e(string);
}
});
}
public void doPost(View view)
{
FormEncodingBuilder requestBodyBuilder = new FormEncodingBuilder();
RequestBody requestBody = requestBodyBuilder.add("userName", "pby").add("userPassword", "123").build();
Request.Builder builder = new Request.Builder();
Request request = builder.url(urlString).post(requestBody).build();
Call newCall = mOkHttpClient.newCall(request);
executeCall(newCall);
}
public void doPostString(View view)
{
RequestBody requestBody = RequestBody.create(MediaType.parse("text/plain;charset = utf-8"), "{name = pby, password = 1234}");
Request.Builder builder = new Request.Builder();
Request request = builder.url(urlString + "doPostString").post(requestBody).build();
Call newCall = mOkHttpClient.newCall(request);
executeCall(newCall);
}
public String doPostString() throws IOException
{
HttpServletRequest request = ServletActionContext.getRequest();
ServletInputStream inputStream = request.getInputStream();
StringBuilder sb = new StringBuilder();
int len = 0;
byte []buff = new byte[1024];
while((len = inputStream.read(buff)) != -1)
{
sb.append(new String(buff, 0, len));
}
System.out.println(sb.toString());
return null;
}
public void doPost(View view)
{
FormEncodingBuilder requestBodyBuilder = new FormEncodingBuilder();
RequestBody requestBody = requestBodyBuilder.add("userName", "pby").add("userPassword", "123").build();
Request.Builder builder = new Request.Builder();
Request request = builder.url(urlString + "login").post(requestBody).build();
Call newCall = mOkHttpClient.newCall(request);
executeCall(newCall);
}
private void showFileChooser() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("*/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
try {
startActivityForResult( Intent.createChooser(intent, "Select a File to Upload"), 1);
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(this, "Please install a File Manager.", Toast.LENGTH_SHORT).show();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case 1:
if (resultCode == RESULT_OK) {
// Get the Uri of the selected file
Uri uri = data.getData();
String path = FileUtils.getPath(this, uri);
if(path != null)
{
postFile(path);
}
}
break;
}
super.onActivityResult(requestCode, resultCode, data);
}
public String doPostFile() throws IOException
{
HttpServletRequest request = ServletActionContext.getRequest();
ServletInputStream inputStream = request.getInputStream();
String dir = ServletActionContext.getServletContext().getRealPath("files");
File file = new File(dir, "abc.jpg");
FileOutputStream fos = new FileOutputStream(file);
int len = 0;
byte [] buff = new byte[1024];
while((len = inputStream.read(buff)) != -1)
{
fos.write(buff, 0, len);
}
fos.flush();
fos.close();
return null;
}
private void upLoadFile(String path)
{
File file = new File(path);
if(!file.exists())
{
return ;
}
MultipartBuilder multipartBuilder = new MultipartBuilder();
RequestBody requestBody = multipartBuilder.type(MultipartBuilder.FORM)
.addFormDataPart("userName", "pby")
.addFormDataPart("userPassword", "123")
.addFormDataPart("mFile", file.getName(), RequestBody.create(MediaType.parse("application/octet-stream"), file)).build();
// CountingRequestBody countingRequestBody = new CountingRequestBody(requestBody, new CountingRequestBody.MyListener() {
// @Override
// public void onRequestProgress(int byteWriteCount, int TotalCount) {
// L.e(byteWriteCount + " / " + TotalCount);
// }
// });
Request.Builder builder = new Request.Builder();
//Request request = builder.url(urlString + "doUpLoadFile").post(countingRequestBody).build();
Request request = builder.url(urlString + "doUpLoadFile").post(requestBody).build();
Call newCall = mOkHttpClient.newCall(request);
executeCall(newCall);
}
public String doUpLoadFile()
{
if(mFile == null)
{
System.out.println(mFileFileName+" is null..");
return null;
}
String dir = ServletActionContext.getServletContext().getRealPath("files");
File file = new File(dir, mFileFileName);
try {
FileUtils.copyFile(mFile, file);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
package com.example.android_okhttp;
import com.squareup.okhttp.MediaType;
import com.squareup.okhttp.RequestBody;
import java.io.IOException;
import okio.Buffer;
import okio.BufferedSink;
import okio.ForwardingSink;
import okio.Okio;
import okio.Sink;
/**
* Created by 前世诀别的一纸书 on 2017/3/5.
*/
public class CountingRequestBody extends RequestBody {
private RequestBody delegate = null;
private MyListener mListener= null;
private CountingSink mCountSink = null;
public interface MyListener
{
void onRequestProgress(int byteWriteCount, int TotalCount);
}
public CountingRequestBody(RequestBody requestBody, MyListener listener)
{
delegate = requestBody;
mListener = listener;
}
@Override
public MediaType contentType() {
return delegate.contentType();
}
@Override
public void writeTo(BufferedSink sink) throws IOException {
mCountSink = new CountingSink(sink);
BufferedSink bs = Okio.buffer(mCountSink);
delegate.writeTo(bs);
bs.flush();
}
private class CountingSink extends ForwardingSink{
private int byteWriteCount = 0;
public CountingSink(Sink delegate) {
super(delegate);
}
@Override
public void write(Buffer source, long byteCount) throws IOException {
super.write(source, byteCount);
byteWriteCount += byteCount;
mListener.onRequestProgress(byteWriteCount, (int) contentLength());
}
}
@Override
public long contentLength() throws IOException {
return delegate.contentLength();
}
}
MultipartBuilder multipartBuilder = new MultipartBuilder();
RequestBody requestBody = multipartBuilder.type(MultipartBuilder.FORM)
.addFormDataPart("userName", "pby")
.addFormDataPart("userPassword", "123")
.addFormDataPart("mFile", file.getName(), RequestBody.create(MediaType.parse("application/octet-stream"), file)).build();
CountingRequestBody countingRequestBody = new CountingRequestBody(requestBody, new CountingRequestBody.MyListener() {
@Override
public void onRequestProgress(int byteWriteCount, int TotalCount) {
L.e(byteWriteCount + " / " + TotalCount);
}
});
Request.Builder builder = new Request.Builder();
Request request = builder.url(urlString + "doUpLoadFile").post(countingRequestBody).build();
//Request request = builder.url(urlString + "doUpLoadFile").post(requestBody).build();
Call newCall = mOkHttpClient.newCall(request);
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有