Volley之Post
来源:互联网 发布:双面羊绒缝合机 淘宝 编辑:程序博客网 时间:2024/06/10 06:00
声明:
该文是参照慕客网视频和网友的博客所整理,参考链接如下:
http://www.imooc.com/learn/468
http://www.cnblogs.com/caobotao/p/5071658.htm
实例一:使用Post方式请求数据返回StringRequest对象
使用Post方式需要手动传递请求参数,可以重写Request类的getParams()方法将请求参数名和参数值放入Map中进行传递。
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.learning.volleydemo03"> <uses-permission android:name="android.permission.INTERNET"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme" android:name=".MyApplication"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
MyApplication.java
import android.app.Application;import com.android.volley.RequestQueue;import com.android.volley.toolbox.Volley;public class MyApplication extends Application { public static RequestQueue queue; @Override public void onCreate() { super.onCreate(); queue = Volley.newRequestQueue(getApplicationContext()); } public static RequestQueue getHttpQueue(){ return queue; }}
MainActivity.java
import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.widget.Toast;import com.android.volley.AuthFailureError;import com.android.volley.Request;import com.android.volley.Response;import com.android.volley.VolleyError;import com.android.volley.toolbox.StringRequest;import java.util.HashMap;import java.util.Map;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); volley_Post(); }/** * 使用Post方式返回String类型的请求结果数据 * new StringRequest(int method,String url, * Listener listener, * ErrorListener errorListener) * * method:请求方式 * Get请求为Method.GET * Post请求为Method.POST * url:请求地址 * listener:请求成功后的回调 * errorListener:请求失败的回调 */ public void volley_Post(){ String url = "https://tcc.taobao.com/cc/json/mobile_tel_segment.htm"; StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() { @Override public void onResponse(String s) { Toast.makeText(MainActivity.this, s, Toast.LENGTH_SHORT).show(); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { Toast.makeText(MainActivity.this, volleyError.toString(), Toast.LENGTH_SHORT).show(); } }){ //getParams()方法: //用户在Volley中使用Post方式请求数据中参数的传递 @Override protected Map<String, String> getParams() throws AuthFailureError { Map<String,String> hashMap = new HashMap<String,String>(); //将请求参数名与参数值放入map中 hashMap.put("tel","15333333333"); return hashMap; } }; //设置请求的Tag标签,可以在全局请求队列中通过Tag标签进行请求的查找 request.setTag("abcPost"); //将请求加入全局队列中 MyApplication.getHttpQueue().add(request); }}
运行结果:
实例二:使用Post方式请求数据返回JsonObject对象
修改上面的MainActivity.java
MainActivity.java
import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.Toast;import com.android.volley.Request;import com.android.volley.Response;import com.android.volley.VolleyError;import com.android.volley.toolbox.JsonObjectRequest;import org.json.JSONObject;import java.util.HashMap;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); volley_Post(); } public void volley_Post() { String url = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json"; HashMap<String,String> hashMap = new HashMap<String,String>(); hashMap.put("tel","15399999999"); //将hashMap转化为一个JSONObject对象 JSONObject object = new JSONObject(hashMap); JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, url,object, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject jsonObject) { Toast.makeText(MainActivity.this,jsonObject.toString(), Toast.LENGTH_SHORT).show(); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { Toast.makeText(MainActivity.this, volleyError.toString(), Toast.LENGTH_SHORT).show(); } }); request.setTag("abcPost"); MyApplication.getHttpQueue().add(request); }}
运行结果:
0 0
- Volley之Post JsonRequest
- Volley之Post
- volley 之get、put、post、delete
- Android:Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- Android Volley解析(一)之GET、POST请求篇
- volley使用 POST请求
- volley Post网络请求
- Volley的Post用法
- Volley请求,GET+POST
- Volley 框架的 POST请求
- Volley框架如何 post xml
- Volley框架GET POST请求
- 使用volley进行post操作
- ASP.NET(C#)中GridView怎么获得当前行的信息
- 数据库索引
- 易控安全分享Windows v1.0.12 官方最新版
- HDU 2766 Equilibrium Mobile
- CyclicBarrier
- Volley之Post
- 什么是XML?如何学习XML?
- C# winfrom 中取datagridview中checkbox的所有选中值
- 解决 Cannot synthesize weak property in file using manual reference counting
- first for sh
- 远程ssh连接Linux服务器,隔一段时间就断了
- Hit Tracking Not Working when Joomla’s Caching Is Enabled: How to Solve
- 国内使用Mac Anaconda安装opencv
- java中修改文件名字,保证文件中每一行数据不重复