请求的资源不支持http方法'POST'

时间:2016-07-19 09:19:59

标签: android asp.net-web-api2 ion

我正在尝试使用Ion框架将来自Android的HTTP发布请求发送到ASP.NET WebAPI v2。这是我到目前为止所做的。

在ASP.NET WebAPI中:

[System.Web.Http.HttpPost]
public IHttpActionResult SubmitPosition([FromBody] string foo, string bar)
{
   return Json(new { serversay = "Im foo-bar" });
}

在Android中:

JsonObject json = new JsonObject();
json.addProperty("foo", "this is foo");
json.addProperty("bar", "Its bar");

Ion.with(getApplicationContext())
                .load("http://182.160.99.115:1012/api/PositionSubmit/SubmitPosition")
                .setJsonObjectBody(json)
                .asJsonObject()
                .setCallback(new FutureCallback<JsonObject>() {
                    @Override
                    public void onCompleted(Exception e, JsonObject result) {
                        String ServerSaid =  result.get("serversay").getAsString();
                        Toast.makeText(MainActivity.this, ServerSaid, Toast.LENGTH_SHORT).show();

                    }
                });

我得到了The requested resource does not support http method 'POST'。 有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

您使用的是属性路由吗?该方法也不应该在Url中:

而不是

http://182.160.99.115:1012/api/PositionSubmit/SubmitPosition

你可以尝试:

http://182.160.99.115:1012/api/PositionSubmit