我有一个用 aspx 制作的旧页面,它获取每个 Request.Form.Keys
并使用表单向另一个页面发送 POST(类似于“HTTP POST REDIRECT”)
现在这个系统必须迁移到 Web API (2.1),我必须模仿它。
这样做的技巧是 aspx 获取任意/多个键和值,您可以将任何内容发布到 aspx。但是我无法在 web api 中使用我的 POST 方法得到相同的结果,因为它期望对象是原样的(我不知道,我也不在乎)
我不知道这是否有帮助,但是旧的 aspx 代码是这样的:
sb.Append("<html>");
sb.AppendFormat("<body onload='document.forms[0].submit()'>Loading...");
sb.AppendFormat("<form action='{0}' method='post'>",
the-next-url);
foreach (string key in Request.Form.Keys)
{
sb.AppendFormat("<input type='hidden' name='{0}' value='{1}'>", key, Request.Form[key]);
}
sb.Append("</form>");
sb.Append("</body>");
sb.Append("</html>");
Response.Write(sb.ToString());
最佳答案
最后,我只是在我的方法中使用:
HttpContext.Current.Request.Form
获取所有 POST 键和值而不是 Request.Form
关于c# - 从 Web Api Controller 中的 Post 方法获取任何参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27275704/