내 앱을 통해 웹 사이트에 로그인하려고합니다. 발리 라이브러리를 사용 중입니다. 나는 데이터를 어떻게 보내야하는지 정확히 알 수는 없지만 내가 얻을 응답은 정확히 무엇인가?내 안드로이드 앱을 사용하여 웹 서비스에 로그인하는 방법은 무엇입니까?
의 URL 당신은 API URL을 공격하고 응답을 볼 수 POSTMAN을 사용할 수 있습니다 http://saptrishiherbal.com/home/login
public class MainActivity extends AppCompatActivity {
private static String TAG = MainActivity.class.getSimpleName();
private Button login;
private ProgressDialog pDialog;
private EditText username;
private EditText password;
String url = "http://www.saptrishiherbal.com/home/login";
String Username;
String Password;
public static final String KEY_USERNAME = "txtusername";
public static final String KEY_PASSWORD = "txtPassword";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
username = (EditText) findViewById(R.id.editText5);
password = (EditText) findViewById(R.id.editText6);
Username = username.getText().toString().trim();
Password = password.getText().toString().trim();
pDialog = new ProgressDialog(this);
pDialog.setMessage("Please wait...");
pDialog.setCancelable(false);
login = (Button) findViewById(R.id.login);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Loginnow(Username, Password);
}
});
}
public void Loginnow(final String username1, final String password1) {
final HashMap<String, String> params = new HashMap<String, String>();
params.put(KEY_USERNAME, username1);
params.put(KEY_PASSWORD, password1);
StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new String(params), new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Intent intent = new Intent(getBaseContext(), Home.class);
startActivity(intent);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this, error.toString(), Toast.LENGTH_LONG).show();
}
})
/* {
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put(KEY_USERNAME, username1);
params.put(KEY_PASSWORD, password1);
return params;
}
};*/
AppController.getInstance().addToRequestQueue(stringRequest);
showpDialog();
}
private void showpDialog() {
if (!pDialog.isShowing())
pDialog.show();
}
}
당신이 말했듯이 응답에서 HTML 코드를 얻는다면 문제는 백엔드 측에서 발생합니다 ... 먼저 변경 한 다음 적절한 응답을 받는지 확인하십시오. – Bhavnik
알맞은 로그인 페이지이며 올바른 인증 정보를 입력하면 다음 페이지로 연결됩니다. 일반적으로이 경우 서버의 응답은 무엇입니까? – choi
http://pastebin.com/exhSQg7U와 같은 서버의 json 응답이어야합니다. – Bhavnik