我知道这个问题已被问过几百万次,但我仍然无法弄清楚它为什么不起作用。 我想从我的android模拟器(android studio)访问我的asp .net api,但我总是得到错误400主机名无效。我看过关于它的每个话题,但它仍然没有用。我添加了这三行
<binding protocol="http" bindingInformation="*:51755:127.0.0.1" />
<binding protocol="http" bindingInformation="*:51755:*" />
<binding protocol="http" bindingInformation="*:51755:172.20.10.9" />
进入我的C:\ Program Files(x86)\ IIS Express \ config \ templates \ PersonalWebServer \ applicationhost.config但它仍无法正常工作。
这是android studio上的代码
AsyncHttpClient client = new AsyncHttpClient();
RequestParams parameters = new RequestParams();
parameters.put("userName","test");
parameters.put("password","test1234");
parameters.add("confirmPassword","test1234");
client.post("http://10.0.2.2:51755/api/orders",parameters, new JsonHttpResponseHandler(){
@Override
public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
// Root JSON in response is an dictionary i.e { "data : [ ... ] }
// Handle resulting parsed JSON response here
text.setText(response.toString());
}
@Override
public void onFailure(int statusCode, Header[] headers, String res, Throwable t) {
// called when response HTTP status is "4XX" (eg. 401, 403, 404)
text.setText(res.toString());
}
});
我无法理解为什么它还没有发挥作用,因为我遵循了我在每个主题上发现的每一件事。
答案 0 :(得分:1)
为了让IIS Express能够接听任何IP地址,只需将地址留空即可,即:bindingInformation =“:51755:”
此外,IIS Express必须以管理员身份运行才能绑定到除localhost之外的任何内容。
检查防火墙和路由表