如何使用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. 使用Node.js時Android-volley發佈錯誤
- 3. 如何在android中使用volley庫將數據保存到mysql?
- 4. 使用Android Volley向URL發佈數據不起作用
- 5. 如何發送嵌套的JSON作爲android volley庫中的post參數
- 6. 使用Google Volley發送請求參數
- 7. 如何在android中使用volley庫調用graphql post請求
- 8. 使用Android Volley發佈並獲取Json數據
- 9. 如何使用指定參數的Android Volley GET方法?
- 10. 我不能使用Volley庫將數據發佈到Mysql數據庫
- 11. 無法使用Volley發佈JSON
- 12. 如何使用Volley庫解析Android Iam中的JSON?
- 13. 如何使用Android中的Volley發送Post請求?
- 14. 如何使用Java restassured庫發佈參數?
- 15. 在android volley請求中獲取和發佈方法
- 16. 如何隱藏Url或android volley中的參數值?
- 17. 如何在swift中使用Alamofire設置發佈參數
- 18. 如何使用Volley庫上傳圖像?
- 19. 如何在Android中發佈?
- 20. 如何在Android中發佈數據?
- 21. 如何使用volley JSON android實現SearchView?
- 22. 如何使用Volley發送POST請求
- 23. 用參數使用Volley刪除
- 24. 如何發佈參數
- 25. 如何使用Android中的twitter4j庫將圖片發佈到Twitter
- 26. 如何使用URL在HttpClient中發佈數據android
- 27. 如何在Android中使用JSON將json數組發佈到webservice?
- 28. php webservice不能在android中使用volley
- 29. 在Android中使用Volley獲取JSONArray
- 30. 如何使用volley發送POST請求到IP地址(android)
哪種類型的參數要發佈? – tsiro
我想發佈電子郵件amd密碼使用Android中的post方法.... –