मेरे पास एंड्रॉइड में एक एप्लीकेशन है, जिसमें मैं रिमोट सर्वर से फाइलें पढ़ रहा था, फाइल पढ़ने के लिए कोड नीचे दिया गया है;एंड्रॉइड में माइक्रोसॉफ्ट आईएसए सर्वर प्रमाणीकरण
URI uri = null;
try {
uri = new URI("http://192.168.1.116/Server1/Users.xml");
} catch (URISyntaxException e) {
e.printStackTrace();
}
HttpGet httpget = new HttpGet(uri);
httpget.setHeader("Content-type", "application/json; charset=utf-8");
httpget.setHeader("host", "192.168.1.116");
HttpResponse response = null;
try {
response = httpClient.execute(httpget);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
HttpEntity responseEntity = response.getEntity();
String result = null;
try {
result = EntityUtils.toString(responseEntity);
Log.d("SERVER1", result);
} catch (ParseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
अब सभी दूरस्थ फ़ाइलें प्रॉक्सी (माइक्रोसॉफ्ट आईएसए सर्वर) के पीछे हैं जिन्हें फ़ाइलों तक पहुंचने के लिए प्रमाणीकरण की आवश्यकता है। कृपया मुझे गाइड करें कि मैं फ़ाइलों तक पहुंचने के लिए एंड्रॉइड से प्रमाणीकरण पैरामीटर कैसे पास कर सकता हूं।
मैं निम्नलिखित कोड की कोशिश की है, लेकिन बेकार,
URL uri = null;
try {
uri = new URI("http:// 192.168.1.116/CookieAuth.dll?Logon");
} catch (URISyntaxException e) {
e.printStackTrace();
}
DefaultHttpClient httpclient = new DefaultHttpClient();
httpclient.getCredentialsProvider()
.setCredentials(
AuthScope.ANY,
new NTCredentials(username, password, deviceIP,
domainName));
HttpPost httppost = new HttpPost(uri);
httppost.setHeader("Content-type",
"application/x-www-form-urlencoded");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("curl", "Z2FServer1/users.xmlZ2F"));
params.add(new BasicNameValuePair("formdir", "3"));
params.add(new BasicNameValuePair("username", "test"));
params.add(new BasicNameValuePair("password", "test"));
UrlEncodedFormEntity ent = null;
try {
ent = new UrlEncodedFormEntity(params, HTTP.UTF_8);
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
httppost.setEntity(ent);
try {
response = httpclient.execute(httppost);
Log.i("Test", response.getStatusLine().toString());
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instream = entity.getContent();
result = convertStreamToString(instream);
Log.d("ISA Server", result);
instream.close();
}
} catch (Exception e) {
e.printStackTrace();
}
लेकिन यह HTTP1.1
500 आंतरिक सर्वर त्रुटि दे रही है। मैं भी नीचे दिए गए लिंक, लेकिन एक ही त्रुटि https://stackoverflow.com/a/10937857/67381
मैं HTTP हो रही है/1.1 500 (अनिर्दिष्ट त्रुटि)। – Siddiqui
सर्वर लॉग इन? यहां अपवाद हो सकता है? –