导航:首页 > 编程语言 > androidhttp发送json

androidhttp发送json

发布时间:2020-12-14 18:30:21

A. android httpclient怎么接收json数据

android里面,通过json数据是不会直接返回图片的,只会返回图片的url地址。
步骤: 1,通过解析专json数据,获取到图片属的地址。
2,通过图片的地址,再一次的请求网络(用异步任务或者hangdler里面请求网络:比如:
URL url = new URL(urlStr);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
BufferedInputStream is = new BufferedInputStream(conn.getInputStream());


3 通过BitmapFactory.decodeStream(里面的参数是一个字节流),该方法返回的是一个bitmap ,直接用imageview.setimagebitmap()就能展示图片了。
说明: 在BitmapFactory.decodeStream这里返回的bitmap可以做进一步的优化,比如二次采样,把获取的bitmap存sd卡等等。。

B. Android Studio用httpPost向服务器传json数据,StringEntity不存在,求高手帮忙

看别人使用的类:主要用到的类有:org.apache.http.client.HttpClient 、org.apache.http.client.methods.HttpPost 和org.json.JSONObject,应该回包含这个答方法的

C. 安卓http请求 发送json数据

用utf8,应该不会乱码,有中文吗

D. android使用http怎么向服务器获得数据并用json解析

写个适配器

下面是代码

java">importjava.io.InputStream;
importjava.net.MalformedURLException;
importjava.net.URL;
importjava.util.ArrayList;
importjava.util.List;

importjavax.net.ssl.HttpsURLConnection;

importorg.json.JSONArray;
importorg.json.JSONException;
importorg.json.JSONObject;

importbean.CoureBean;

importtools.StreamHelper;

importandroid.annotation.SuppressLint;
importandroid.app.Activity;
importandroid.content.Context;
importandroid.os.Bundle;
importandroid.os.Handler;
importandroid.os.Message;
importandroid.support.annotation.VisibleForTesting;
importandroid.view.LayoutInflater;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.ViewGroup;
importandroid.widget.Adapter;
importandroid.widget.ArrayAdapter;
importandroid.widget.CheckBox;
importandroid.widget.ImageView;
importandroid.widget.ListAdapter;
importandroid.widget.ListView;
importandroid.widget.Switch;
importandroid.widget.TextView;
importandroid.widget.Toast;

{

privateList<CoureBean>list=newArrayList<CoureBean>();
privateListViewlv;

privateHandlerhandler=newHandler(){
e(android.os.Messagemsg){

switch(msg.what){
case1:
StringjsonString=msg.obj.toString();

converData(jsonString);
init();
break;

default:
break;
}
};
};

@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView)findViewById(R.id.lvImgList);
getJson();
}

//绑定列表
privatevoidconverData(StringjsonString){
try{
JSONObjectjOb=newJSONObject(jsonString);
JSONArrayjArray=jOb.getJSONArray("Data");
for(inti=0;i<jArray.length();i++){
JSONObjectcurrentItem=jArray.getJSONObject(i);
CoureBeanmodelBean=newCoureBean();
modelBean.setName(currentItem.getString("name"));
modelBean.setImgUrl(currentItem.getString("picSmall"));
list.add(modelBean);

}

}catch(JSONExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}

//获取json数据
privatevoidgetJson(){
newThread(){
@Override
publicvoidrun(){
StringstrUrlString="http://www.imooc.com/api/teacher?type=4&num=30";
try{
URLurl=newURL(strUrlString);
HttpsURLConnectionconn=(HttpsURLConnection)url
.openConnection();
conn.setRequestMethod("GET");
conn.setConnectTimeout(5000);

intcode=conn.getResponseCode();
if(code==200){
InputStreamis=conn.getInputStream();
StringjsonString=StreamHelper.readInputStream(is);
Messagemsg=newMessage();
msg.what=1;
msg.obj=jsonString;
handler.sendMessage(msg);

}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}.start();
}

classViewHolder{
ImageViewimPic;
TextViewtxtName;

}
privatevoidinit(){
ArrayAdapteradapter=newMyAdapter(this,R.layout.list_item,list);
lv.setAdapter(adapter);
}

/**
*自定义适配器(内部类)
*
*@author
*
*/
<CoureBean>{
privateintresourceId;

//构造函数
publicMyAdapter(Contextcontext,intresource,List<CoureBean>objects){
super(context,resource,objects);
resourceId=resource;
}

@SuppressLint("ViewHolder")
@Override
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){

Viewview;
ViewHolderviewHolder=newViewHolder();

if(convertView==null){
view=LayoutInflater.from(MainActivity.this).inflate(
resourceId,null);//拿到当前行对象

//拿到当前视图对象里面的名字叫tvPwdTitle的TextView对象
viewHolder.txtName=(TextView)view.findViewById(R.id.txtName);
viewHolder.imPic=(ImageView)view
.findViewById(R.id.imageView1);
view.setTag(viewHolder);

}else{
view=convertView;
}

//拿到应该放在当前行上的数据
finalCoureBeandataItem=getItem(position);
viewHolder=(ViewHolder)view.getTag();
viewHolder.txtName.setText(dataItem.getName());
returnview;
}
}
}

E. android客户端与服务器交互,传的数据是JSON格式,请问用webservice好呢还是http好呢

http比较好,一般公司都用的是http。对应json来说已尽够了

F. 怎么使用android-async-http给后台上传json数据

一、在项目中搭建环境
1. 导入相关jar包

2. 搭建相关的包和类

3.类中的方法简单实现
User:
声明以下属性,并实现无参构造器和有参构造器,以及各自的get和set方法

UserDao:

UserDaoImpl:

JsonServlet:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// 来自于数据库
UserDao Impl = new UserDaoImpl();
List entities = Impl.findAll();
// 把List集合转换成一个json的数据格式
JSONArray jsonArray = JSONArray.fromObject(entities);

response.setContentType("application/json");// 响应类型 json的数据
response.getWriter().write(jsonArray.toString());
response.getWriter().close();
}

protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}

附上出处链接:http://www.2cto.com/kf/201405/304410.html

G. android怎么使用okhttputils发送json请求数据

服务端是用servlet写的吧 直接调用response的out输出即可 response.getWriter().print("20"); 这样安卓得到的返回值就是20

H. 在android端使用httpclient的execute方法发送一个url,url里面有各种参数,从服务端返回json数据

参考一下吧
http://blog.csdn.net/wangzhenhua88/article/details/6787328

I. android okhttp post json和get有什么区别

区别是:
Get:是以实体的方式得到由请求URI所指定资源的信息,如果请求URI只是一个数据产生过程,那么最终要在响应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述。
Post:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URI所指定资源的附加新子项,Post被设计成用统一的方法实现下列功能:
1:对现有资源的解释
2:向电子公告栏、新闻组、邮件列表或类似讨论组发信息。
3:提交数据块
4:通过附加操作来扩展数据库

Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient。
关于HttpURLConnection和HttpClient的选择>>官方博客
尽管Google在大部分安卓版本中推荐使用HttpURLConnection,但是这个类相比HttpClient实在是太难用,太弱爆了。
OkHttp是一个相对成熟的解决方案,据说Android4.4的源码中可以看到HttpURLConnection已经替换成OkHttp实现了。所以我们更有理由相信OkHttp的强大。

OkHttp 处理了很多网络疑难杂症:会从很多常用的连接问题中自动恢复。如果您的服务器配置了多个IP地址,当第一个IP连接失败的时候,OkHttp会自动尝试下一个IP。OkHttp还处理了代理服务器问题和SSL握手失败问题。
使用 OkHttp 无需重写您程序中的网络代码。OkHttp实现了几乎和java.net.HttpURLConnection一样的API。如果你用了 Apache HttpClient,则OkHttp也提供了一个对应的okhttp-apache 模块。

J. android okhttp怎么给服务器传递的参数怎么转成json

public String androidPost() { String rs = null; String path = "url/Android_JDBC_SH/AndroidLoginAction"; HttpPost hp = new HttpPost(path); //获取客户端,用来向服务器发出请求 DefaultHttpClient hc = new DefaultHttpClient(); try { //Default Constructor taking a name and a value BasicNameValuePair nm = new BasicNameValuePair("name", name); BasicNameValuePair pa = new BasicNameValuePair("password", password); List list = new ArrayList(); list.add(nm); list.add(pa); //构建向服务器发送的实体 HttpEntity entity = new UrlEncodedFormEntity(list); hp.setEntity(entity); //提交请求,获取服务器的响应 HttpResponse response = hc.execute(hp); if (response.getStatusLine().getStatusCode() == 200) { //获取响应实体 entity = response.getEntity(); rs = EntityUtils.toString(entity); } } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return rs; }

阅读全文

与androidhttp发送json相关的资料

热点内容
网络中常用的传输介质 浏览:518
文件如何使用 浏览:322
同步推密码找回 浏览:865
乐高怎么才能用电脑编程序 浏览:65
本机qq文件为什么找不到 浏览:264
安卓qq空间免升级 浏览:490
linux如何删除模块驱动程序 浏览:193
at89c51c程序 浏览:329
怎么创建word大纲文件 浏览:622
袅袅朗诵文件生成器 浏览:626
1054件文件是多少gb 浏览:371
高州禁养区内能养猪多少头的文件 浏览:927
win8ico文件 浏览:949
仁和数控怎么编程 浏览:381
项目文件夹图片 浏览:87
怎么在东芝电视安装app 浏览:954
plc显示数字怎么编程 浏览:439
如何辨别假网站 浏览:711
宽带用别人的账号密码 浏览:556
新app如何占有市场 浏览:42

友情链接