c# - 谷歌视觉连接到 API 没有外部谷歌 DLL
问题描述
如何在不使用外部 dll 的情况下连接到谷歌云视觉?
解决方案
首先,您必须生成 JSON 请求,简单示例:
Request req = new Request();
req.addFeature("DOCUMENT_TEXT_DETECTION"); //Add here all the feature types
req.Image.content = Convert.ToBase64String(qq);//qq is a byte[]
Requests reqList = new Requests(req);
json = JsonConvert.SerializeObject(reqList);
其次,您需要发布简单的 HTTP 请求:
var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://vision.googleapis.com/v1/images:annotate?key="PLACE_YOURKEY_HERE"");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
streamWriter.Write(json);
}
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
response = streamReader.ReadToEnd();
}
JSON类的成员(应该实现的方法):
class Requests
{
public List<Request> Request { get; set; }
}
class Request
{
public Image1 Image { get; set; }
public List<Feature> Features { get; set; }
}
public class Feature
{
public string Type { get; set; }
}
public class Image1
{
public string content { get; set; }
}
相关主题链接
推荐阅读
- python - 如果“pip install”有效,为什么要“sudo pip install”?(HelloAnalytics.py 的问题)
- e-commerce - 按语言 ID 获取内容资产
- php - 我的 PHP 登录页面无法正常工作
- css - Child's padding mixes with Parent's padding
- macos - 编写此代码后,每当我打开我的 Mac 时,第三方应用程序都会得到验证
- laravel - 未定义密码重置器 [users]
- java - 如何使用Java在每个pdf文件中具有不同索引的两个字符串之间获取一个字符串
- angular - 从源“http://localhost:4200”访问“http://[::1]:3000/api/requests/...”处的 XMLHttpRequest 已被 CORS 策略阻止
- javascript - 来自相机的 Expo/React Native 图像路径
- python - Python:从多维numpy数组中删除随机值