Google翻译V2无法处理来自C#的大文本翻译

Google翻译V2无法处理来自C#的大文本翻译,第1张

Google翻译V2无法处理来自C#的大文本翻译

根据文档

WebClient
,显然无法使用标题,因为您无法根据需要更改标题:

注意:如果要在单个请求中发送更多数据,也可以使用POST调用API。

q
POST正文中的参数必须少于5K个字符。要使用POST,您必须使用
X-HTTP-Method-Override
标头来告诉Translate API将请求视为GET(使用
X-HTTP-Method-Override: GET
)。

您可以使用

WebRequest
,但需要添加
X-HTTP-Method-Override
标题:

var request = WebRequest.Create (uri);request.Method = "POST";request.ContentType = "application/x-www-form-urlenpred";request.Headers.Add("X-HTTP-Method-Override", "GET");var body = new StringBuilder();body.Append("key=SECRET");body.AppendFormat("&source={0}", HttpUtility.UrlEnpre(source));body.AppendFormat("&target={0}", HttpUtility.UrlEnpre(target)); //--body.AppendFormat("&q={0}", HttpUtility.UrlEnpre(text));var bytes = Encoding.ASCII.GetBytes(body.ToString());if (bytes.Length > 5120) throw new ArgumentOutOfRangeException("text");request.ContentLength = bytes.Length;using (var output = request.GetRequestStream()){    output.Write(bytes, 0, bytes.Length);}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5623003.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存