Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Google Vision API:POST返回200 OK,但没有数据_C#_Json_Asp.net Web Api2_Asp.net Core Webapi_Google Vision - Fatal编程技术网

C# Google Vision API:POST返回200 OK,但没有数据

C# Google Vision API:POST返回200 OK,但没有数据,c#,json,asp.net-web-api2,asp.net-core-webapi,google-vision,C#,Json,Asp.net Web Api2,Asp.net Core Webapi,Google Vision,几天来,我们一直在努力通过Google Vision API发布图像以供识别 我们正在使用Newtonsoft序列化JSON对象。Google Vision处理转义JSON字符串的方式似乎与处理未转义JSON字符串(有效JSON格式)的方式不同(无效?) 。。原因当删除转义字符,并使用Postman将其直接发布到Google API时,它会起作用 帖子: public异步任务发布([FromBody]ICollection文件) { var API_KEY=“XXXXXXXXXXXXX”; v

几天来,我们一直在努力通过Google Vision API发布图像以供识别

我们正在使用Newtonsoft序列化JSON对象。Google Vision处理转义JSON字符串的方式似乎与处理未转义JSON字符串(有效JSON格式)的方式不同(无效?)

。。原因当删除转义字符,并使用Postman将其直接发布到Google API时,它会起作用

帖子:

public异步任务发布([FromBody]ICollection文件)
{
var API_KEY=“XXXXXXXXXXXXX”;
var AUTH_URL=”https://vision.googleapis.com/v1/images:annotate?key=“+API_键;
字符串filePath=System.IO.Path.GetTempFileName();
foreach(文件中的var formFile)
{
如果(formFile.Length>0)
{
使用(var stream=new MemoryStream())
{
等待formFile.CopyToAsync(流);
var base64Image=Extensions.ConvertToBase64(流);
var DetectionTypes=new List(){“LABEL\u DETECTION”、“TEXT\u DETECTION”};
var googleReq=新的GoogleRequest();
var requests=googleReq.requests;
请求=新列表(){(新请求())};
请求[0]。功能=新列表(){新功能(“标签检测”)、新功能(“文本检测”)};
请求[0]。Image=new ugle.Image(base64Image);
googleReq.Requests=请求;
var json=JsonConvert.SerializeObject(googleReq);
var请求=新的StringContent(json);
request.Headers.ContentType=新的MediaTypeHeaderValue(“应用程序/json”);
var result=wait httpclient.PostAsync(新Uri(AUTH_URL),请求);
/*
var json=JsonConvert.SerializeObject(googleReq);
var content=newstringcontent(json,Encoding.UTF8,“application/json”);
var result=wait httpclient.PostAsync(AUTH_URL,content);
*/
返回Ok(新的{result=result,Request=json});
}
}
}
返回Ok(新的{count=files.count,filePath});
//返回Ok(新图片信息(null,null,null,条形码编号:null));

}
请显示如何获取“转义json”的屏幕截图。如果让httpClient进行序列化,并简单地尝试
var result=wait httpClient.PostAsync(新Uri(AUTH_URL),googleReq),可能会出现重复情况?将首先尝试您的方法@oerkelens:)马上回来…@oerkelens:类型错误。。。PostAsync需要HttpContent,但googleReq是一个GoogleRequest…请显示如何获得“转义json”的屏幕截图。如果让httpClient进行序列化,并简单地尝试
var result=wait httpClient.PostAsync(新Uri(AUTH_URL),googleReq),可能会发生重复的情况?将首先尝试您的方法@oerkelens:)马上回来…@oerkelens:类型错误。。。PostAsync需要HttpContent,但googleReq是一个GoogleRequest。。。