[英]how to pass Parameters Info from the Body in ASP.NET Web APi?
我试图通过我的POST方法从实际身体传递一个冗长的字符串,如果我通过url传递它完全正常,但我不知道要改变什么,所以我可以从身体插入数据。
public void PostMethod(string id, [FromBody]string data)
{
if (ModelState.IsValid)
{
var result = client.Store(StoreMode.Add, id, data);
}
else
{
}
}
如果我像这样使用它:
http://localhost:8888/api/data?id=2&data=MybigString
它工作得很好,但我不想从URL传递数据,任何建议都将受到高度赞赏。
给定您的action方法,即public void PostMethod(string id, [FromBody]string data)
,您可以使用http://localhost:8888/api/data/2
的URI和=MyBigString
的消息体。 如果你使用jQuery,你可以使用这样的东西: $.post('api/data/2', { '': 'MyBigString' });
确保发送正确的邮件正文。
编辑:
使用隐藏字段并在帖子之前设置它的值。 只需确保它在您的表单中。
@Html.HiddenFor(Model.data)
使用jQuery在javascript中设置值:
$("#data").val('my big string');
或者,如果您没有绑定到强类型视图,则可以使用简单的HTML隐藏输入而不是@Html.HiddenFor()
:
<input type="hidden" id="data" name="data" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.