标签: asp-classic

在经典 ASP 中使用 Web 服务

以下代码在 Win Server 2003 计算机上不适用于我,但在 XP 上适用。我已经在服务器上安装了 SOAP Toolkit 3.0。可能是什么原因?

asp-classic

1
推荐指数
1
解决办法
1万
查看次数

有人能告诉我为什么我在经典 asp 中没有收到对 MSXML2.ServerXMLHTTP.6.0 的响应吗?

有人能告诉我为什么我没有得到回应吗?

<%
    RssURL = "https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=nrcGOV"

    Set xmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
    xmlHttp.setProxy 2, "www.proxy.mydomain.com:80"
    xmlHttp.Open "Get", RssURL, false
    xmlHttp.Send()
    myXML = xmlHttp.ResponseText
    myXMLcode = xmlHttp.ResponseXML.xml

    response.Write(myXML)
    response.Write(myXMLcode)
    response.Write("hey")
%>
Run Code Online (Sandbox Code Playgroud)

我正在尝试从 twitter api 获取 rss feed xml 到我的服务器上,在那里我可以使用客户端代码对其进行操作。有人可以告诉我为什么我没有使用此代码获取提要吗?

xml rss response serverxmlhttp asp-classic

1
推荐指数
1
解决办法
5675
查看次数

经典 ASP 测试服务器是否可以创建对象

使用此代码:

Dim xmlDOM
Set xmlDOM = Server.CreateObject("MSXML2.DOMDocument.3.0")    
Run Code Online (Sandbox Code Playgroud)

如何测试 CreateObject 函数是否成功?

asp-classic

1
推荐指数
1
解决办法
1892
查看次数

用于 ODBC 驱动程序的 ASP 经典 Microsoft OLE DB 提供程序错误“80004005”

我在连接 MS Access 数据库时遇到问题。我正在使用 IIS7。我收到此错误:

用于 ODBC 驱动程序的 Microsoft OLE DB 提供程序错误“80004005”[Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序

这是我的数据库连接:

<%
 dim rs,con,sql
 SET con=Server.CreateObject("ADODB.Connection")
 SET rs=Server.CreateObject("ADODB.Recordset")

 con.open "DRIVER={Microsoft Access DRIVER (*.mdb)}; DBQ=" & Server.MapPath("crs.mdb") & ""
 sql="SELECT * FROM tblAccount WHERE fldUsername='"& request.form("txtuser") &"' AND fldPassword='"& request.form("txtpass") &"';"
 rs.CursorType=2

 rs.Open sql, con

 if rs.bof then
   response.write "WRONG"
else
   response.write "CORRECT"
 end if

 rs.Close
 SET rs=Nothing
 SET con=Nothing
%>
Run Code Online (Sandbox Code Playgroud)

我的单位是 Windows 和终极 64 位。

vbscript ms-access iis-7 asp-classic

1
推荐指数
1
解决办法
5722
查看次数

Server.ScriptTimeout = 0 不工作

我有一个 ASP Classic 脚本,它必须做很多事情(仅限管理员),包括运行一个需要 4 分钟才能执行的存储过程。

然而,即使我有

Server.ScriptTimeout = 0
Run Code Online (Sandbox Code Playgroud)

就在页面顶部,它似乎忽略了它 - 2003 和 2012 服务器。

我已经尝试尽可能多地为 proc 建立索引,但它是为了减少经常搜索的术语,所以我必须清除所有黑客、性垃圾邮件等。

我不明白的是为什么 Server.ScriptTimeout = 0 被忽略了。

实际的错误是这样的

Active Server Pages 错误“ASP 0113”

脚本超时

/admin/restricted/fix.asp

已超出脚本执行的最长时间。您可以通过为属性 Server.ScriptTimeout 指定新值或更改 IIS 管理工具中的值来更改此限制。

它从来没有这样做过,它应该覆盖 IIS 中 30 秒的默认设置。

我已确保 proc 的命令超时为 0,因此无限制,并且在从 proc 返回后出错。

有人有任何想法吗?

sql vbscript timeout ado asp-classic

1
推荐指数
1
解决办法
2430
查看次数

即使在转义引号时也进行 SQL 注入

我正在想办法解决以下问题,因为看起来有人这样做了,我想解决它。但是,在使用OWASP Recommendation 之类的东西修复它之前,我真的很想了解攻击的工作原理

    Set conn = Server.CreateObject("ADODB.Connection")
    conn.open xDb_Conn_Str
    sSql = "SELECT * FROM [User]"
    sSql = sSql & " WHERE [Username] = '" & CleanSql(sUserId) & "'"
    Set rs = conn.Execute(sSql)
Run Code Online (Sandbox Code Playgroud)

CleanSql -

Function CleanSql(str)

    Dim sWrk

    sWrk = Trim(str&"")
    sWrk = Replace(sWrk, "'", "''") ' Adjust for Single Quote

    sWrk = Replace(sWrk, "[", "[[]") ' Adjust for Open Square Bracket

    CleanSql = sWrk

End Function
Run Code Online (Sandbox Code Playgroud)

单引号显然在此转义。

在此之后,它将检查是否发现用户使用以下内容验证密码:

If UCase(rs("Password")) = UCase(sPassWd) Then
    DoStuff()
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏。

security sql-injection asp-classic

1
推荐指数
1
解决办法
5464
查看次数

类型不匹配错误:'Ubound'

我需要帮助解决一个非常烦人的问题,我从今天早上 8 点开始就一直在研究这个问题。在调试经典的 asp 错误方面,我绝不是专业人士。但是,我知道的足以弄清楚发生了什么,但不完全确定如何处理/根除此问题:

问题:sql 查询不会返回任何会导致我的数组为空的内容,这给了我标题中指定的错误。

代码:

  233  while not rs.eof
  234   varCampArray = split(trim(rs("Notes")) & "", ";")
  235       If ubound(varCampArray) > 0 Then
  236           varCampArray2 = split(varCampArray(0) & "", "=")
  237       End If
  238       if ubound(varCampArray2) > 0 then
  254     wend
Run Code Online (Sandbox Code Playgroud)

第 239-253 行无关紧要(只是基于数组和另一个查询的计算),只是想添加 'wend' 语句,所以没有人认为它没有正确编码。

额外信息:这是针对我们的自定义 vb 应用程序,对于这个特定的 asp 文件,用户转到 Report>Daily>Summary,然后用户从那里选择某一天以获取当天的财务摘要。如果我今天运行报告,它会运行并得到数字,如果我在本月 26 日运行它,它会运行并没有错误地执行。如果我昨天(4/27/2016)运行它,我会在我们的 vb 应用程序的 reportViewer 中得到这个:(Microsoft VBScript 运行时错误“800a000d”)

类型不匹配:'ubound'

/apps/Program14/reports/trans_summary.asp,第 238 行

我还没有尝试解决这个问题,因为我不确定如何处理这个问题。我什至查看了 iis 日志文件,它的错误是 500 0 0 130。然后配置 IE 以在运行时正确显示错误的详细信息。这就是它吐出来的东西,目前我被卡住了。任何帮助将不胜感激。我在谷歌上搜索并阅读了无数其他文章,但我仍然对这个问题感到有些茫然,而微软与外国技术支持一样有帮助。

vbscript asp-classic

1
推荐指数
1
解决办法
9360
查看次数

HTTP/1.1 新应用程序失败 ASP IIS

我正在尝试将网站从一台服务器移动到另一台服务器,但指向同一个外部数据库服务器。出现的错误是:

HTTP/1.1 新建应用程序失败

它在以前的服务器中工作,并且仅在某些页面中工作。

ASP 安装在服务器角色上,并尝试将 applicationHost.config 编辑为部分 name=”asp” overrideModeDefault=”Allow”,但他们没有解决问题。该应用程序是 c:\inetpub\wwwroot\ 根目录下的默认网站

这是在 web.config 中:

<system.webServer> 
  <defaultDocument> 
  <files> <clear /> 
   <add value="index.html" /> 
   <add value="Default.htm" /> 
   <add value="Default.asp" /> 
   <add value="index.htm" /> 
   <add value="iisstart.htm" /> 
   <add value="default.aspx" /> 
   <add value="index.php" /> 
  </files> 
  </defaultDocument> 
  <httpErrors errorMode="DetailedLocalOnly" /> 
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

谢谢你。

iis asp-classic

1
推荐指数
1
解决办法
4094
查看次数

如何防止经典asp站点中的csrf攻击?

我有一个用 vb6 和经典 asp(12 年前)开发的应用程序。现在我必须防止跨站点请求伪造(CSRF)。

我怎样才能做到这一点?

asp.net asp-classic csrf-protection

1
推荐指数
1
解决办法
6342
查看次数

Server.URLEncode 开始用加号 ("+") 而不是百分比 20 ("%20") 替换空白

鉴于这段代码:

<%
    Response.Write Server.URLEncode("a doc file.asp")
%>
Run Code Online (Sandbox Code Playgroud)

它输出一段时间(如 Javascript call encodeURI):

a%20doc%20file.asp
Run Code Online (Sandbox Code Playgroud)

现在,不知为何,我得到:

a+doc+file%2Easp
Run Code Online (Sandbox Code Playgroud)

我不确定我是怎么做到的(可能是文件内容编码为 ANSI/UTF-8)。为什么会发生这种情况,我怎样才能获得 的第一个行为Server.URLEncode,即使用百分比编码?

vbscript urlencode asp-classic

1
推荐指数
1
解决办法
605
查看次数