ورود

View Full Version : پاس دادن مقدار به وب سرویس از طریق Volley



nasr
یک شنبه 03 مرداد 1395, 10:24 صبح
سلام
من با این متد مقدار موجود در وب سرویس را بصورت Json میگیرم
مشکل من اینه که چطوری میتونم یه مقداری را به وب سرویس پاس بدم تا بر اون اساس وب سرویس مقداری را برگردونه

مثلا میخوام کد پرسنلی را پاس بدم و وب سرویس مشخصات را برگردونه
الان برای پاس دادن نمیدونم باید چکار کنم

private void makeJsonObjectRequest() throws JSONException {




JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.GET, urlJsonObj, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG, response.toString());


try {
// Parsing json object response
// response will be a json object


String name = response.getString("name");
String email = response.getString("email");
JSONObject phone = response.getJSONObject("phone");
String home = phone.getString("home");
String mobile = phone.getString("mobile");


jsonResponse = "";
jsonResponse += "Name: " + name + "\n\n";
jsonResponse += "Email: " + email + "\n\n";
jsonResponse += "Home: " + home + "\n\n";
jsonResponse += "Mobile: " + mobile + "\n\n";


txtResponse.setText(jsonResponse);


} catch (JSONException e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "Error: " + e.getMessage(), Toast.LENGTH_LONG).show();
}


}
}, new Response.ErrorListener() {


@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
error.getMessage(), Toast.LENGTH_SHORT).show();
// hide the progress dialog


}
});


// Adding request to request queue
AppController.getInstance().addToRequestQueue(json ObjReq);
}

hharddy
یک شنبه 03 مرداد 1395, 20:49 عصر
شما اول باید صفحه وب سرویس و طراحی کنید که با گرفتن اون مقادیر پاس داده شده عملیات و انجام بده برای فرستادن مقادیر با volley باید از متد post استفاده کنید مثل کد زیر که اومدم مقدار رشته name و به صفحه خودم ارسال کردم.
مقدار url هم که طبیعتا لینک اون صفحه طراحی شده هست.



name = EName.getText().toString();

StringRequest myString = new StringRequest(Request.Method.POST, url, new Response.Listener<String>()
{

@Override
public void onResponse(String response

) {
Toast.makeText(getApplicationContext(),"thanks for contact ",Toast.LENGTH_LONG).show();
}
}, new Response.ErrorListener()
{
@Override

public void onErrorResponse(VolleyError error)
{ Toast.makeText(getApplicationContext(),"error... ",Toast.LENGTH_LONG).show();
} }

)
{


protected Map<String,String> getParams(){
Map<String, String> MyData = new HashMap<String,String>();

MyData.put("Name",name );
return MyData;
}

};
myRequest.add(myString);

javadaskari
سه شنبه 05 مرداد 1395, 10:53 صبح
اگه میخواهید عدد ارسال کنید، میتونید از متد GET استفاده کنید (سرعتشم بیشتره!):

وقتی میخای لینک رو صدا بزنی، پارامتر رو هم باهاش بفرست:
http://Sitename.com/Webservice.php?PersonelCode=100

nasr
سه شنبه 05 مرداد 1395, 12:06 عصر
شما اول باید صفحه وب سرویس و طراحی کنید که با گرفتن اون مقادیر پاس داده شده عملیات و انجام بده برای فرستادن مقادیر با volley باید از متد post استفاده کنید مثل کد زیر که اومدم مقدار رشته name و به صفحه خودم ارسال کردم.
مقدار url هم که طبیعتا لینک اون صفحه طراحی شده هست.



name = EName.getText().toString();

StringRequest myString = new StringRequest(Request.Method.POST, url, new Response.Listener<String>()
{

@Override
public void onResponse(String response

) {
Toast.makeText(getApplicationContext(),"thanks for contact ",Toast.LENGTH_LONG).show();
}
}, new Response.ErrorListener()
{
@Override

public void onErrorResponse(VolleyError error)
{ Toast.makeText(getApplicationContext(),"error... ",Toast.LENGTH_LONG).show();
} }

)
{


protected Map<String,String> getParams(){
Map<String, String> MyData = new HashMap<String,String>();

MyData.put("Name",name );
return MyData;
}

};
myRequest.add(myString);

ضمن تشکر
من چطور میتونم هم پارامتر پاس بدم و هم پارامتر بگیرم
من میخوام یه مقداری را پاس بدم مثلا یوزرو پسورد را پاس بدم و درصورت درست بودن نام و نام خانوادگی شخص برگشت داده بشه
ممنون

hharddy
چهارشنبه 06 مرداد 1395, 21:58 عصر
ضمن تشکر
من چطور میتونم هم پارامتر پاس بدم و هم پارامتر بگیرم
من میخوام یه مقداری را پاس بدم مثلا یوزرو پسورد را پاس بدم و درصورت درست بودن نام و نام خانوادگی شخص برگشت داده بشه
ممنون
باز این برمیگرده به وب سرویس شما این اطلاعات با این روشی که گفتم میفرستی به سرور بعد تو صفحه ای که طراحی کردی میای بگی فلان عملیات و انجام بده و اگه مشکلی نبود نام و نام خانوادگی و بصورت مثلا جیسون نمایش بده بعد اونارو به همون شکل پست اول که گفتی دریافت کن