本文所述为visual basic6.0的一个模块方法,是使用XMLHTTP实现Post与Get功能,虽然是一个老代码,但是可以替代Inet控件,实现数据通讯。很值得学习借鉴一下。
主要模块代码如下:
'========================================================== '| 模 块 名 | XMLHTTP '| 说 明 | 替代Inet控件,实现数据通讯 '==========================================================Public Enum DataEnum ResponseText = 1 ResponseBody = 2 End Enum Public Function GetData(ByVal Url As String, ByVal DataStic As DataEnum) As Variant On Error GoTo ERR: Dim XMLHTTP As Object Dim DataS As String Dim DataB() As Byte Set XMLHTTP = CreateObject("Microsoft.XMLHTTP") XMLHTTP.Open "get", Url, True XMLHTTP.send While XMLHTTP.ReadyState <> 4 DoEvents Wend '--------------------------------------函数返回 Select Case DataStic Case ResponseText '--------------------------------直接返回字符串 DataS = XMLHTTP.ResponseText GetData = DataS Case ResponseBody '--------------------------------直接返回二进制 DataB = XMLHTTP.ResponseBody GetData = DataB Case ResponseBody + ResponseText '------------------------------二进制转字符串[直接返回字串出现乱码时尝试] DataS = BytesToStr(XMLHTTP.ResponseBody) GetData = DataS Case Else '--------------------------------无效的返回 GetData = "" End Select '--------------------------------------释放空间 Set XMLHTTP = Nothing Exit Function ERR: GetData = "" End Function Public Function PostData(ByVal StrUrl As String, ByVal StrData As String, ByVal DataStic As DataEnum) As Variant On Error GoTo ERR: Dim XMLHTTP As Object Dim DataS As String Dim DataB() As Byte Set XMLHTTP = CreateObject("Microsoft.XMLHTTP") XMLHTTP.Open "POST", StrUrl, True XMLHTTP.setRequestHeader "Content-Length", Len(PostData) XMLHTTP.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded" XMLHTTP.send (StrData) Do Until XMLHTTP.ReadyState = 4 DoEvents Loop '-----------------------------函数返回 Select Case DataStic Case ResponseText '--------------------------------直接返回字符串 DataS = XMLHTTP.ResponseText PostData = DataS Case ResponseBody '--------------------------------直接返回二进制 DataB = XMLHTTP.ResponseBody PostData = DataB Case ResponseBody + ResponseText '---------------------------二进制转字符串[直接返回字串出现乱码时尝试] DataS = BytesToStr(XMLHTTP.ResponseBody) PostData = DataS Case Else '--------------------------------无效的返回 PostData = "" End Select '------------------------------------释放空间 Set XMLHTTP = Nothing Exit Function ERR: PostData = "" End Function Function BytesToStr(ByVal vIn) As String strReturn = "" For i = 1 To LenB(vIn) ThisCharCode = AscB(MidB(vIn, i, 1)) If ThisCharCode < &H80 Then strReturn = strReturn & Chr(ThisCharCode) Else NextCharCode = AscB(MidB(vIn, i + 1, 1)) strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) i = i + 1 End If Next BytesToStr = strReturn End Function
问题内容: 为什么AJAX中存在GET和POST请求,因为它无论如何都不会影响页面URL?通过将敏感数据传递到AJAX中的GET上,有什么区别呢? 问题答案: 您应该根据Web服务的要求使用正确的HTTP动词。 处理 Collection URI时,例如: GET :列出集合的成员,并带有其成员URI以便进一步导航。例如,列出所有待售汽车。 PUT :定义为“将整个集合替换为另一个集合”。 POS
本文向大家介绍C#中调用VB中Inputbox类的实现方法,包括了C#中调用VB中Inputbox类的实现方法的使用技巧和注意事项,需要的朋友参考一下 C#自己没有Inputbox这个类,但是Inputbox也蛮好用的,所以有两种方法可以使用 一:间接调用vb中的Inputbox功能 1。在项目中添加对Microsoft.VisualBasic引用 2。在项目中添加命名空间
本文向大家介绍PHP如何使用cURL实现Get和Post请求,包括了PHP如何使用cURL实现Get和Post请求的使用技巧和注意事项,需要的朋友参考一下 先来看一下在PHP中建立cURL请求的基本步骤: (1)初始化 curl_init() (2)设置变量 curl_setopt() 。最为重要。有一长串cURL参数可供设置,它们能指定URL请求的各个细节。要一次性全部看
主要内容:HTTP 请求:GET vs POST,jQuery $.get() 方法,实例,demo_test.php 文件代码:,jQuery $.post() 方法,实例,demo_test_post.php 文件代码:jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。 HTTP 请求:GET vs POST 两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST。 GET - 从指定的资源请求数据 POST -
本文向大家介绍Python使用post及get方式提交数据的实例,包括了Python使用post及get方式提交数据的实例的使用技巧和注意事项,需要的朋友参考一下 最近在使用Python的过程中,发现网上很少提到在使用post方式时,怎么传一个数组作为参数的示例,此处根据自己的实践经验,给出相关示例: 单纯的post请求: 需要token时写法如下: get方式的写法如下: 总结 以上就是这篇文章
本文向大家介绍PHP使用stream_context_create()模拟POST/GET请求的方法,包括了PHP使用stream_context_create()模拟POST/GET请求的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP使用stream_context_create()模拟POST/GET请求的方法。分享给大家供大家参考,具体如下: 有时候,我们需要在服务器端模