小编Mat*_*ker的帖子

经典ASP - 请求对象为空

我正在努力为旧的经典asp网站添加一个功能,并遇到了一个有趣的问题.页面上的以下行导致有用的错误"Object required:''"

strServerName = Request.ServerVariables("server_name")
Run Code Online (Sandbox Code Playgroud)

当我附加一个调试器来查看它时,请求实际上是空的,我不明白这是怎么回事?这一行存在于几个页面上,除此之外没有任何问题.在这种情况下,页面由另一页面的重定向执行.

我一直在寻找一天左右的解决方案,并且找不到任何有用的东西.我很绝望,任何想法都会非常感激.

哦,如果需要更多信息,请不要犹豫,打电话给我.

谢谢!

更新1
根据要求,下面是包含在<%%>标记中的整个代码段.该块作为文件中的第一个代码存在(名为"order-results-instant.asp"):

<%
strServerName = Request.ServerVariables("server_name")
strServerName = UCase(strServerName)

strServerURL = "http://localhost/cbr"
strServerURLhttps = "https://localhost/cbr"
strConnect = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=CBR; Integrated Security=SSPI"

Dim objConn
Dim sql_stmt
Dim rs  
%>
Run Code Online (Sandbox Code Playgroud)

更新2
我使用了以下两种方法将执行重定向到此页面 - 这可能会导致请求丢失?

 'Response.Redirect strServerURL & "/order-results-instant.asp?gwstep=1"
 Response.Write "<META HTTP-EQUIV=""refresh"" content=""5;URL=" & strServerURL & "/order-results-instant.asp?gwstep=1"">"
Run Code Online (Sandbox Code Playgroud)

iis vbscript asp-classic

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

将片段从c#转换为vbscript

所以我有一种情况需要在url上传递一些参数.为了在url上没有id = 1,我添加了一个简单的加密方法来模糊这些值.这在.Net土地上运行良好.然而,现在,我需要从经典的asp页面指向这个期望参数加密的.net页面.我真的不太熟悉加密或经典的asp,并希望有人能够指导我一个好的JS库,或者只是提供这个函数的经典asp版本?如果.Net代码有任何问题,我也很乐意听到有关这方面的反馈意见.

这是加密方法:

public static string Encrypt(string Input)
{
    try
    {
        key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8));
        var des = new DESCryptoServiceProvider();
        Byte[] inputByteArray = Encoding.UTF8.GetBytes(Input);
        var ms = new MemoryStream();
        var cs = new CryptoStream(ms, des.CreateEncryptor(key, IV), CryptoStreamMode.Write);
        cs.Write(inputByteArray, 0, inputByteArray.Length);
        cs.FlushFinalBlock();
        return Convert.ToBase64String(ms.ToArray());
    }
    catch (Exception)
    {
        return "";
    }
}
Run Code Online (Sandbox Code Playgroud)

这里是解密方法(我需要这个来解密经典的asp加密文本):

public static string Decrypt(string Input)
{
    try
    {
        key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8));
        var des = new DESCryptoServiceProvider();
        var inputByteArray = Convert.FromBase64String(Input);
        var ms = new MemoryStream();
        var …
Run Code Online (Sandbox Code Playgroud)

c# asp.net encryption asp-classic

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

标签 统计

asp-classic ×2

asp.net ×1

c# ×1

encryption ×1

iis ×1

vbscript ×1