根据文档
WebClient,显然无法使用标题,因为您无法根据需要更改标题:
注意:如果要在单个请求中发送更多数据,也可以使用POST调用API。
qPOST正文中的参数必须少于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);}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)