如何使用Volley庫發佈參數?我嘗試了很多,但我無法獲得解決方案。所以如果有人知道如何使用抽球發佈參數,那麼請幫助我。如何在Android中使用Volley庫發佈參數?
回答
您可以創建擴展進口com.android.volley.Request
這樣您的自定義請求單(在這種情況下,它是JSON,但你可以使用字符串):
public class CustomRequest extends Request<JSONObject> {
private Response.Listener<JSONObject> listener;
private Map<String, String> params;
public CustomRequest(String url, Map<String, String> params,
Response.Listener<JSONObject> reponseListener, Response.ErrorListener errorListener) {
super(Method.GET, url, errorListener);
this.listener = reponseListener;
this.params = params;
}
public CustomRequest(int method, String url, Map<String, String> params,
Response.Listener<JSONObject> reponseListener, Response.ErrorListener errorListener) {
super(method, url, errorListener);
this.listener = reponseListener;
this.params = params;
}
protected Map<String, String> getParams()
throws com.android.volley.AuthFailureError {
return params;
};
@Override
protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
try {
String jsonString = new String(response.data,
HttpHeaderParser.parseCharset(response.headers));
return Response.success(new JSONObject(jsonString),
HttpHeaderParser.parseCacheHeaders(response));
} catch (UnsupportedEncodingException e) {
return Response.error(new ParseError(e));
} catch (JSONException je) {
return Response.error(new ParseError(je));
}
}
@Override
protected void deliverResponse(JSONObject response) {
// TODO Auto-generated method stub
listener.onResponse(response);
}
}
而且使用這樣的:
Map<String, String> params = new HashMap<String, String>();
params.put("param1",string1);
params.put("param2", "string2");
RequestQueue requestQueue = Volley.newRequestQueue(context);
CustomRequest jsObjRequest = new CustomRequest(Request.Method.POST, BuildConfig.API_HOSTNAME_JSON_POST,
params, reponseListener, errorListener);
requestQueue.add(jsObjRequest);
請問你能告訴我爲什麼它在這種情況下顯示空值.http://www.androidhive.info/2014/05/android-working -with-volley-library-1/ –
我不知道這個API在哪裏值實際上工作? –
這是我用過的api ... http://infowiz.in/workforce/login –
首先你必須創建一個自定義的類,它擴展了Volley的請求類...在這個類中,你應該用你用來做請求的方法(在你的情況下是POST)聲明一個構造函數,URL終點,具體你會喜歡的參數e發佈,以及Volley回調監聽器。你也需要創建一個方法來獲取post數據將被設定,並從片段的活性送
public class MyRequest extends Request<JSONObject> {
private Listener<JSONObject> listener;
private Map<String, String> reponseListener;
public MYRequest(int method, String url, Map<String, String> params, Listener<JSONObject> reponseListener, ErrorListener errorListener) {
super(method, url, errorListener);
this.reponseListener = reponseListener;
this.params = params;
}
protected Map<String, String> getParams()
throws com.android.volley.AuthFailureError {
return params;
}
@Override
protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
try {
String jsonString = new String(response.data,
HttpHeaderParser.parseCharset(response.headers));
return Response.success(new JSONObject(jsonString),
HttpHeaderParser.parseCacheHeaders(response));
} catch (UnsupportedEncodingException e) {
return Response.error(new ParseError(e));
} catch (JSONException je) {
return Response.error(new ParseError(je));
}
}
@Override
protected void deliverResponse(JSONObject response) {
// TODO Auto-generated method stub
responselistener.onResponse(response);
}
}
}
你可以調用這個類從acctivity這樣的:
RequestQueue requestQueue = VolleySingleton.getInstance().getRequestQueue();
MyRequest jsObjRequest = new MyRequest(Request.Method.POST, LOGIN_URL, params, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d("RESPONSE", response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("RESPONSE ERROR", "Error: " + error.getMessage());
}
});
requestQueue.add(jsObjRequest);
其中PARAMS哈希是:
Map<String, String> params = new HashMap<String, String>();
params.put("email", "yourEmail");
params.put("password", "yourPassword");
- 1. 在發佈請求中發送表單urlencoded參數android volley
- 2. 如何發佈json數組對象在服務器上使用volley庫在android ..?
- 3. 如何使用volley庫發佈JSON數據?
- 4. 如何使用volley在Android中使用JSON字符串發送發佈請求?
- 5. 使用Node.js時Android-volley發佈錯誤
- 6. 如何在android中使用volley庫將數據保存到mysql?
- 7. 如何使用Gradle替換Android Volley庫?
- 8. 使用volley php發佈數據
- 9. 如何發送嵌套的JSON作爲android volley庫中的post參數
- 10. 使用Google Volley發送請求參數
- 11. 使用Android Volley向URL發佈數據不起作用
- 12. Android Volley JsonObjectRequest不發送參數
- 13. 如何在android中使用volley庫調用graphql post請求
- 14. 使用Android Volley發佈並獲取Json數據
- 15. 如何使用指定參數的Android Volley GET方法?
- 16. 我不能使用Volley庫將數據發佈到Mysql數據庫
- 17. Android Volley ImageLoader - BitmapLruCache參數?
- 18. 發佈JsonObject與Volley
- 19. 如何在Android Arsenal上發佈Android庫?
- 20. 無法使用Volley發佈JSON
- 21. android volley發佈二進制主體
- 22. 如何使用Volley庫解析Android Iam中的JSON?
- 23. 如何使用Android中的Volley發送Post請求?
- 24. 如何使用Java restassured庫發佈參數?
- 25. 如何在Xamarin中發佈參數?
- 26. 如何使用Volley發佈JSONObject並接收字符串?
- 27. 在Android中使用HttpPost發佈JsonArray和字符串參數
- 28. 何時使用volley發送發佈請求
- 29. 如何在swift中使用Alamofire設置發佈參數
- 30. 如何隱藏Url或android volley中的參數值?
哪種類型的參數要發佈? – tsiro
我想發佈電子郵件amd密碼使用Android中的post方法.... –