Я пытаюсь перевести Curl
код в Android volley , чтобы получить токен API, я новичок в библиотеке Curl and Volley, поэтому мне нужна небольшая помощь ..
Это пример curl:
$url = "http://url.com/login";
$datos = array(
'apikey'=>'isanapikey123',
'user'=> array (
'email'=>'trying@try.com',
'password'=>'123',
),
);
$content = array('data'=>json_encode($data));
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($content));
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
echo $json_response;
В примере Curl я не понимаю, как формируется этот пользователь, каков его заголовок или тело, я не смог сделать сообщениев почтальоне
и это моя попытка в Android:
public class MainActivity extends AppCompatActivity {
private static final String TAG = MainActivity.class.getSimpleName();
private Button btn_login;
String getid;
private static String URL_LOGIN = "http://url.com/login";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_login = findViewById(R.id.button_login);
email = (TextView) findViewById(R.id.email);
password = (TextView) findViewById(R.id.edit_password);
btn_login = (Button) findViewById(R.id.button_login);
RequestQueue requestQueue = Volley.newRequestQueue(this);
btn_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String email1 = email.getText().toString().trim();
String password1 = password.getText().toString().trim();
if (!email1.isEmpty() || !password1.isEmpty()) {
Login(email1, password1);
} else {
email.setError("Por favor, introduzca el correo electrónico.");
password.setError("Por favor, introduzca su contraseña.");
}
}
});
}
private void Login(final String email, final String password) {
StringRequest stringRequest = new StringRequest((Request.Method.POST), URL_LOGIN,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject jsonObject = new JSONObject(response);
String success = jsonObject.getString("success");
JSONArray jsonArray = jsonObject.getJSONArray("login");
if (success.equals("1")) {
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject object = jsonArray.getJSONObject(i);
}
}
} catch (JSONException e) {
e.printStackTrace();
Toast.makeText(MainActivity.this, "Error " + e.toString(), Toast.LENGTH_SHORT).show();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("apikey", "isanapikey123");
params.put("email", email);
params.put("password", password);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
}