【问题标题】:Missing formdata in angular角度中缺少表单数据
【发布时间】:2014-04-06 13:33:56
【问题描述】:

我正在尝试将值从 angular 传递到 web api。

目前我所拥有的 angular 确实与 webapi 通信,因为当有东西连接到它时我会计算它。

var data = new FormData();
data.append("x", "1");
data.append("y", "2");
$scope.http({ method: 'PUT', url: urltowebapi, data: data });

我在 webapi 端的内容应该读取这些值,但它总是以 {} 的形式返回。

HttpContent req = Request.Content;
string str = req.ReadAsStringAsync().Result; 

【问题讨论】:

  • 如果您使用的是 Microsoft Web API,为什么要直接从 Request 读取内容,而不是使用 JSON 序列化将数据传递给您的控制器?
  • 试图把我能想到的所有东西都扔到墙上,看看有什么效果。我一整天都在盯着这个,不久前有点放弃了逻辑。
  • web api 将通过控制器进入。你能把它的代码贴出来吗?

标签: c# .net angularjs asp.net-web-api


【解决方案1】:

不知怎的,我明白了。

在角度我正在传递数据。

$scope.http({ method: 'PUT', url: controllerurl, data: { data: data } });

在我的控制器中,我读取它并反序列化 json。我认为这是我之前通过角度传递数据的方式,但我不知道。

HttpContent req = Request.Content;
string str = req.ReadAsStringAsync().Result; 
var jObj = (JObject)JsonConvert.DeserializeObject(str);
string data= jObj["data"].ToString();

【讨论】:

    猜你喜欢
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-26
    • 2016-12-25
    相关资源
    最近更新 更多