为了账号安全,请及时绑定邮箱和手机立即绑定

使用POST从ajax获取数据

使用POST从ajax获取数据

C#
慕容708150 2021-11-21 15:14:08
现在我被困在一个问题上。我想这是一个非常基本的事情。但是经过几个小时的研究,如果有人能给我一个快速的建议,那就太好了。所以我试图从我的 api (C#) 调用我的 PUT 方法    [HttpPost]    public String Post(String id)    {        return id;    }当我按下按钮时会调用它。按钮功能是这样的:<script>function sendData() {    $.ajax({        url: '/api/values',        type: 'POST',        data: {'id':"100014"},        dataType: 'json',        contentType: 'application/json',    });}如果我调用 GET 方法,一切正常。但是尝试调用 POST 方法只会返回 HTTP Post 不支持该资源。我用 Postman 测试了这个方法。这里 Post 方法有效。但是我不想将这些数据传递到 Url 而是从 Ajax 传递到数据。如果有人可以帮助我,那就太好了。编辑: 我只是尝试了一些东西。我的最终结果是这样的:        [HttpPost]    public async Task<IHttpActionResult> Post(int id)    {        var rawMessage = await Request.Content.ReadAsStringAsync();        return Ok(rawMessage);    }对我来说效果很好。
查看完整描述

3 回答

?
森栏

TA贡献1810条经验 获得超5个赞

问题是找不到您的路线。尝试


     [HttpPost]

     [Route("getValues")]

public String Post(String id)

{


        return id;

    }

您甚至可以在控制器类之前添加:


[RoutePrefix("api/values")]

然后用


url: '/api/values/getValues',


查看完整回答
反对 回复 2021-11-21
?
月关宝盒

TA贡献1772条经验 获得超5个赞

请检查您是否引用了正确的库。

如果您正在使用,System.Web.Mvc可能会出现此问题。尝试删除它并System.Web.Http改为引用。

希望这能解决您的问题。


查看完整回答
反对 回复 2021-11-21
?
缥缈止盈

TA贡献2041条经验 获得超4个赞

你应该用Ok()method包装你的输出。就像是


使用您的退货类型作为 IHttpActionResult


 [HttpPost]

    public IHttpActionResult Post(String id)

    {


        return Ok(id);

    }


查看完整回答
反对 回复 2021-11-21
  • 3 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信