我到处搜索如何实现这一目标,但没有结果。 首先,我需要向网站发出请求然后发送哈希(我已经拥有)并获得一些数据的响应。 我能够连接,但我无法使用哈希键来获取数据。 任何人都可以帮我使用android如何做到这一点? 感谢。
我试图遵循这个:Make an HTTP request with android 使用主机
解决方案:
uint8_t
答案 0 :(得分:0)
这取决于您使用的是哪种哈希(SHA-N,MD5等)以及您用于构建服务器的框架类型。尝试搜索框架的文档,使用哪种加密哈希函数。然后在Internet上搜索在您的代码上实现此加密哈希函数的API(例如,Django使用PBKDF2)。之后,您需要定义此函数的参数(salt,迭代次数,密码(或哈希))。该算法使用salt和迭代次数值计算散列(密码)。因此,当您尝试访问服务器时,您必须通过HTTP发送生成的哈希。如果此哈希与服务器端生成的哈希相同,则身份验证成功。
答案 1 :(得分:0)
这是你可以做的一个例子:
final String URL = "http://192.168.0.100:8000/myHistory/mobile/?user=";
HttpClient client;
StringBuilder url = new StringBuilder(URL);
url.append(user);
url.append("&pwd=");
url.append(hash);
client = new DefaultHttpClient();
HttpGet get = new HttpGet(url.toString());
HttpResponse response = null;
try {
response = client.execute(get);
} catch (IOException e) {
e.printStackTrace();
}
int status = 0;
status = response.getStatusLine().getStatusCode();
if (status == 200) {
HttpEntity entity = response.getEntity();
String data = "";
try {
data = EntityUtils.toString(entity);
} catch (IOException e) {
e.printStackTrace();
}
//Here you manipulate the 'data' variable, which is in HTML format.