繁体   English   中英

对于WebApi中的XMLHttpRequest,请使用Blob数据类型向服务器发起请求。 C#.net核心如何接收和解析它?

[英]For the XMLHttpRequest in WebApi, use the blob data type to initiate a request to the server. How does C# .net core receive and parse it?

Web前端使用Blob数据类型请求,如下所示:

var $jsonTotal = ___config___["data_json"];
$jsonTotal = $jsonTotal.replace("{1}" , ___playerID___);
$jsonTotal = $jsonTotal.replace("{2}" , ___platfrom___);
$jsonTotal = $jsonTotal.replace("{3}" , ___serverID___);
$jsonTotal = $jsonTotal.replace("{4}" , $total);
var $blob = new Blob([$jsonTotal], { type: "application/json" });//text/plain;charset=utf-8
var $oXHR  = new XMLHttpRequest();
$oXHR.responseType = "blob";
$oXHR.open(___config___["upload_method"], ___servicePath___);
$oXHR.addEventListener('load', function(event){
    console.log("upload--ok--");
}, true);
$oXHR.send( $blob );

可以看出,Blob实际上是Json数据包上的一层。 现在的问题是:如何在C#.net核心环境中获取blob数据并解析该数据?

在服务器端,我已经按照以下方式进行了尝试,但都以失败告终(未获取数据):

[HttpPost]公共无效日志(Blob blob)

[HttpPost]公共无效Log(byte [] bytes)

前端代码:

var $jsonTotal = ___config___["data_json"];
$jsonTotal = $jsonTotal.replace("{1}" , ___playerID___);
$jsonTotal = $jsonTotal.replace("{2}" , ___platfrom___);
$jsonTotal = $jsonTotal.replace("{3}" , ___serverID___);
$jsonTotal = $jsonTotal.replace("{4}" , $total);
var $blob = new Blob([$jsonTotal], { type: "application/json" });//text/plain;charset=utf-8
var $oXHR  = new XMLHttpRequest();
$oXHR.responseType = "blob";
$oXHR.open(___config___["upload_method"], ___servicePath___);
$oXHR.addEventListener('load', function(event){
    console.log("upload--ok--");
}, true);
$oXHR.send( $blob );

服务器端代码:

[HttpPost]公共无效Log(byte [] bytes)

我希望C#服务器可以从Web前端获取Blob类型数据,并从Blob数据获取Json数据。

使用FromBody属性并接受JObject作为解释这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM