首先,创建一个Android项目,并新建一个MainActivity类。
接着,编写一个访问IIS服务器的类。
package https://www.wendangku.net/doc/a27348524.html,.authorize;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.auth.AuthScope;
import https://www.wendangku.net/doc/a27348524.html,ernamePasswordCredentials;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.apache.http.impl.client.DefaultHttpClient;
import android.util.Log;
public abstract class HttpHelper {
private final static String TAG = "HttpHelper";
public static String invoke() {
String result = null;
try {
final String url = "http://192.168.1.104:180/";
HttpPost httpPost = new HttpPost(url);
DefaultHttpClient httpClient = new DefaultHttpClient();
//基本身份验证
BasicCredentialsProvider bcp = new BasicCredentialsProvider();
String userName = "liudong";
String password = "123";
bcp.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials( userName, password));
httpClient.setCredentialsProvider(bcp);
HttpResponse httpResponse = httpClient.execute(httpPost);
StringBuilder builder = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader( httpResponse.getEntity().getContent()));
for (String s = reader.readLine(); s != null; s = reader.readLine()) { builder.append(s);
}
result = builder.toString();
Log.d(TAG, "result is ( " + result + " )");
} catch (Exception e) {
Log.e(TAG, e.toString());
}
Log.d(TAG, "over");
return result;
}
}
注意的是,我这里用户名和密码分别是:liudong和123。
然后,修改layout文件:main.xml
android:layout_height="wrap_content" android:text="@string/hello"/> 最后,修改MainActivity。 package https://www.wendangku.net/doc/a27348524.html,.authorize; import android.app.Activity; import android.app.ProgressDialog; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { private final String TAG = this.getClass().getSimpleName(); private Button btnPassword; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.wendangku.net/doc/a27348524.html,yout.main); btnPassword = (Button) this.findViewById(R.id.btnPassword); setInvokeOnClick(); } private void setInvokeOnClick() { btnPassword.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub AsyncTask @Override protected void onPostExecute(String result) { // TODO Auto-generated method stub // super.onPostExecute(result); progressDialog.cancel(); Toast.makeText(MainActivity.this, result, Toast.LENGTH_SHORT).show(); Log.d(TAG, result); } @Override protected void onPreExecute() { // TODO Auto-generated method stub super.onPreExecute(); progressDialog = new ProgressDialog(MainActivity.this); progressDialog .setProgressStyle(ProgressDialog.STYLE_SPINNER); progressDialog.setTitle("调用中,请稍后..."); progressDialog.show(); } @Override protected String doInBackground(Void... arg0) { // TODO Auto-generated method stub try { return HttpHelper.invoke(); } catch (Exception e) { return null; } } }; task.execute(); } }); } } 设置访问权限为: 图2.1 三、IIS部署 首先、添加一个网站,如图3.1所示。 如图3.1 接着,在进入计算机管理-->本地用户和组-->用户,新建一个用户,如图3.2所示。 图3.2 然后,设置IIS的身份验证(图3.3所示)。 图3.3 设置其身份验证模式为:基本验证或Window身份s验证(图3.4所示)。 图3.4 最后,我们在浏览器中输入网址进行验证,验证结果见图3.5和图3.6。 图3.5 图3.6 从图中我们可以发现,浏览该网页时需要用户名和密码。我们输入了正确的用户名和密码后就可以登录这个页面了。 四,运行效果。 见图4.1和图4.2所示。 图4.1 图4.2