微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WinHttpRequest:发送方法

如何解决WinHttpRequest:发送方法

我正在尝试在请求正文中传递参数,文档说:

要发送的请求是在之前对 Open 方法调用中定义的。调用应用程序可以通过 Body 参数提供要发送到服务器的数据。如果对象的 Open 的 HTTP 动词是“GET”,则此方法发送不带正文的请求,即使它是由调用应用程序提供的。

所以,我需要将 POST 与 body 一起使用。但是当我将 POST 与 body 一起使用时,我有错误 “Bad Request: message text is empty” 并且当我将 GET 与 body 一起使用时,结果是行。为什么?

我的代码

WinHttp = NEW COMObject("WinHttp.WinHttpRequest.5.1"); 
WinHttp.Open("GET","http://api.telegram.org/botbotname/sendMessage",0);

WinHttp.setRequestHeader("Content-type","application/json");

JSONWr = New JSONWriter();  
JSONWr.ValidateStructure = False;   

JSONParams = New JSONWriterSettings(,Chars.Tab);  

JSONWr.SetString(JSONParams);   

JSONWr.WriteStartObject();

JSONWr.WritePropertyName("chat_id");
JSONWr.WriteValue(UserId);

JSONWr.WritePropertyName("text");
JSONWr.WriteValue(Text);

JSONWr.WriteEndobject();

JSONString = JSONWr.Close();

WinHttp.Send(JSONString);

工作,但是如何?为什么同样的 POST 不起作用?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。