我正在使用拉力赛Rest API并开发一个Rally app.I想在Rally Credentials的基础上验证用户。我已经设法导入了rally-rest-api-2.2.1.jar和HTTP jars.I我在推荐https://github.com/RallyTools/RallyRestToolkitForJava/wiki/User-Guide#setup
我创建了一个登录页面并尝试使用构造函数。如果用户名和密码正确,它应该导航到下一页,我可以进一步处理GET请求等。
我的代码:
package com.example.apetkar.pocrally;
import android.content.Intent;
import android.net.Credentials;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.rallydev.rest.client.BasicAuthClient;
import com.rallydev.rest.client.HttpClient;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
public class MainActivity extends AppCompatActivity {
EditText etemail;
EditText etpass;
Button btnlogin;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etemail=(EditText) findViewById(R.id.edittextemail);
etpass=(EditText) findViewById(R.id.edittextpassword);
btnlogin=(Button)findViewById(R.id.buttonlogin);
btnlogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view)
{
try {
getClient();
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
});
}
public HttpClient getClient() throws MalformedURLException {
try
{
BasicAuthClient basicAuthClient = new BasicAuthClient(new URI("https://rally1.rallydev.com"),etemail.getText().toString(),etpass.getText().toString());
basicAuthClient.getServer();
basicAuthClient.setApplicationName("Rally-Mobile");
return basicAuthClient;
}
catch (URISyntaxException e)
{
e.printStackTrace();
}
return null;
}
}
任何人都可以建议流程应该是什么,或者我该如何实现这一点。谢谢
答案 0 :(得分:1)
我会尝试在您的try块中发出一个简单的请求,以确保凭据是好的。此外,您可能应该直接实例化RallyRestApi而不是BasicAuthClient。