一个在VB中与ASP页面交互的问题

韧恒 2013-10-22 08:10:54
服务器上有一个ASP页面test.asp,大致如下:
<%
Avg=request.querystring("avg")

if Avg<>"" then
'... 处理过程
response.write "OK"
else
response.write "Error."
end if
%>

在程序中想访问页面 http://www.mysite.com/test.asp?avg=xxx ,传递不同的值给参数avg。让ASP处理。
问题是能什么方案,最好是Windows API能实现我的要求?不要用WebBrowser,因为不想留下痕迹。最好有较详细的代码,网络这方面我很菜。
...全文
279 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2013-10-27
  • 打赏
  • 举报
回复
哈哈,围观,学习……
笨狗先飞 2013-10-27
  • 打赏
  • 举报
回复
WinHttpRequest不会留缓存文件
韧恒 2013-10-27
  • 打赏
  • 举报
回复
可以了,原来将ASP页面存为UTF-8就可以了。 又发现个问题,该对象可否清除防问过的页面缓存文件?
笨狗先飞 2013-10-25
  • 打赏
  • 举报
回复
可能是编码格式的原因 用UTF-8我测试了一下,可以用 ASP部分 '文件My.asp,文件保存的时候注意存成UTF-8格式的

<%
Response.Addheader "Content-Type","text/html; charset=utf-8"
Response.write Request("ID")
%>
VB部分的代码

Public Function GetPage(ByVal URL As String, Optional ByVal Data As String = "") As String
    Dim XML As Object, T As Double
    Set XML = CreateObject("WinHttp.WinHttpRequest.5.1")
    XML.Option(6) = False
    XML.Option(4) = 13056
    If Len(Data) = 0 Then
        XML.Open "GET", URL
        XML.Send
    Else
        XML.Open "POST", URL
        XML.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
        XML.SetRequestHeader "Content-Length", LenB(StrConv(Data, vbFromUnicode))
        XML.Send Data
    End If
    GetPage = XML.ResponseText
    Set XML = Nothing
End Function
'测试时可以调用
'debug.print GetPage("http://localhost/my.asp?id=测试")'GET方式
'或者
'debug.print GetPage("http://localhost/my.asp","id=测试")'POST方式
韧恒 2013-10-24
  • 打赏
  • 举报
回复
不知为什么,同一个页面,页面回显结果不同,程序有时会报错。现在看来好象是当页面回显汉字时,s = xmlHttp.responseText 报错,而无法得到结果。要是对汉字不支持,最多显示乱码而已,为什么会报错呢?没明白,望赐教!
threenewbee 2013-10-23
  • 打赏
  • 举报
回复
在最后加上 Dim s As String s = xmlHttp.responseText MsgBox s XP SP2以上到Win8都支持,SP2以下安装MSXML6.0
韧恒 2013-10-23
  • 打赏
  • 举报
回复
谢谢版主指教,不过本人愚钝,我如何得到页面回显的字符呢?就我的页面而言,如何知道是OK还是Error? 另外,这个Microsoft.XMLHTTP对象从winxp到win8中都有吗?用户理否需要安装其他组件?
threenewbee 2013-10-22
  • 打赏
  • 举报
回复
Din xmlHttp As Object Dim param As String param = "你要传的参数" Set xmlHttp = CreateObject("Microsoft.XMLHTTP") xmlHttp.open "GET", "http://www.abc.com/test.asp?avg=" & param, True xmlHttp.send (Null) While xmlHttp.ReadyState <> 4 DoEvents Wend MsgBox "OK"
花了很长时间,从国外网站上下到的Wrox出品的英文原版, 《ASP.NET 3.5入门经典--涵盖C#和VB.NET》 《Wrox-Beginning ASP.NET 3.5 CSharp and VB》 附带C#和VB源码。 很经典一本书籍,不容错过。 书名: ASP.NET 3.5入门经典——涵盖C#和VB.NET(第5版) 丛书名: 作者: (荷兰) Imar Spaanjaars著 这是一本非常好的ASP.NET入门书籍。本书以建立一个实际的Web站点为主线,从最初的没有任何功能的简单站点开始,然后逐步增加功能和效果,直到最后建立一个完整的、功能丰富的、数据库驱动的、交互的Web站点。其间,分别介绍了建立这个Web站点涉及到的众多内容,尤其特别介绍了新增的LINQ功能、ASP.NET AJAX及ASP.NET服务器控件等内容。全书的示例代码均用C#和VB.NET两种语言表示,读者可自由地选择自己喜欢的语言。 本书适合于任何想利用ASP.NET进行Web开发的初级程序员。不要求有Web开发经验。 ASP.NET畅销书之一,Web站点开发人员首选的入门教程,其早期版本,曾影响着无数国程序员。 本书以建立一个实际的Web站点为主线,从零开始,逐步增加功能和效果,直到建立一个完整的、功能丰富的、数据库驱动的、交互的Web站点。 本书特别介绍了新增的LINQ功能、ASP.NET AJAX及ASP.NET服务器控件等内容。 全书的示例代码均用C#和VB.NET两种语言表示,读者可自由地选择自己喜欢的语言。 作者Imar编写多部有关ASP.NET 2.0和Macromedia Dreamweaver的书籍,均在Wrox公司出版发行的。是Wrox Community Forum(p2p.wrox.com)的主要撰稿人之一。

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧