使用表单如何将POST的有效负载作为JSON发送

时间:2016-11-08 06:58:01

标签: javascript html angularjs json

我使用HTML使用POST调用下载xlsx,pdf文件。   我使用下面的代码发送我的有效负载,但它发送为url格式,

 <form method="post" action="{{url}}" enctype='application/json'>
<input type="text" name="type" value="{{type}}" hidden>
<input type="text" name="paramValue" value="{{value}}" hidden>
</form>


Request body
type=Shop&paramValue=Kumar

我需要将其作为JSON传递,因为我收到了错误,

Response    HTTP/1.1 415 Unsupported Media Type

如果在HTML中使用表单,请建议如何将数据作为JSON传递。

1 个答案:

答案 0 :(得分:1)

表单enctype属性不支持application/json here

您需要手动json编码您的数据以用于您的发布请求或使用默认发布json的$http服务:

var data = { type: $scope.form.type, value: $scope.form.value };

$http.post(url, data) // default content-type is 'application/json' for $http.post
.success(function(data, status) {
  //yay
});