当前位置: 首页 > 知识库问答 >
问题:

具有重定向的chilkat ActiveX HTTP组件出现问题

曾华翰
2023-03-14

我使用此脚本检查最后一个重定向url:

        set http = CreateObject("Chilkat_9_5_0.Http")

        http.FollowRedirects = 0

        ' resp is a Chilkat_9_5_0.HttpResponse
        Set resp = http.QuickGetObj(link)
        If (http.LastMethodSuccess = 0) Then
            wscript.echo http.LastErrorText
            WScript.Quit
        End If

        status = resp.StatusCode
        wscript.echo "HTTP Response Status: " & status
        wscript.echo "Redirect URL >>>: " & http.FinalRedirectUrl
        nextUrl = http.WasRedirected 

        loopCount = 0
        Do While (status = 302 OR status = 301)

            wscript.echo "HTTP Response Status: " & status
            wscript.echo "Redirect URL >>>: " & http.FinalRedirectUrl


            nextUrl = http.FinalRedirectUrl
            ' resp is a Chilkat_9_5_0.HttpResponse
            Set resp = http.QuickGetObj(nextUrl)
            If (http.LastMethodSuccess = 0) Then
                wscript.echo http.LastErrorText
                WScript.Quit
            End If

            status = resp.StatusCode
            wscript.echo "HTTP Response Status: " & status

            ' For safety, prevent infinite loops by
            ' keeping a loopCount and only allows following a max 
            ' of 10 redirects:
            loopCount = loopCount + 1
            If (loopCount > 10) Then

                wscript.echo "Too many redirects."
                WScript.Quit
            End If
        Loop

此代码正确打印301状态代码,但不打印http。FinalReDirectURL(它是空白的)。

我也尝试与网址https://www.businessonline.it/articoli/guida-al-nuovo-regime-forfettario-2016-e-2017.html

输出为:

Link: https://www.businessonline.it/articoli/guida-al-nuovo-regime-forfettario-2016-e-2017.html
HTTP Response Status: 301
Redirect URL >>>: 

HTTP Response Status: 301
Redirect URL >>>: 
ChilkatLog:
  QuickGetObj:
    DllDate: Oct 28 2019
    ChilkatVersion: 9.5.0.80
    UnlockPrefix: BRKEVN.XXXXXXXXXXX
    Architecture: Little Endian; 32-bit
    Language: ActiveX
    VerboseLogging: 0
    Component successfully unlocked using purchased unlock code.
    url: 
    verb: GET
    quickRequestDb:
      url: 
      getHttpConnectionByUrl:
        urlObject_loadUrl:
          No domain in URL
          url: 
        --urlObject_loadUrl
      --getHttpConnectionByUrl
    --quickRequestDb
    Failed.
  --QuickGetObj
--ChilkatLog

我用了Chilkat9.5.0.70和9.5.0.80。如果我将FollowReDirects设置为1,第一个StatusCode是"200",我无法获取URL。

你能帮助我吗?

谢谢

共有1个答案

林彬
2023-03-14

谢谢洛伦佐,

这个问题与QuickGetObj和Quickget有关。QuickGetStr方法对WasReDirected和FinalReDirectUrl属性运行良好。

下面是一个新的32位ActiveX版本,带有修复程序:

32位:https://chilkatdownload.com/prerelease/chilkatax-9.5.0-win32-1630.zip

 类似资料:
  • 问题内容: 我正在尝试将printf函数的输出重定向到Windows上的文件。我在python3中使用ctypes来调用函数。我的代码是: 但是,当我从Eclipse运行代码时,屏幕上显示以下内容: …以及TEST.txt中的以下内容 当我从cmd运行此命令时,这是屏幕上显示的内容: ..这是在TEST.txt中: 当我注释掉第二条语句时,例如 在Eclipse的屏幕上: …并在TEST.txt文

  • 问题内容: 我试图删除文件中除最后一行以外的所有行,但是以下命令不起作用,尽管file.txt不为空。 为什么会这样呢? 问题答案: 从文件通过管道重定向回到同一文件是不安全的;如果在开始读取第一阶段之前设置管道的最后阶段时被外壳覆盖,那么最终将得到空输出。 而是执行以下操作: …嗯,实际上,不要在生产代码中这样做;特别是如果您在对安全性敏感的环境中并以root用户身份运行,则以下更合适: 另一种

  • 问题内容: 我知道我可以做: 所以我应该能够: 但这不起作用,导致编译问题。 问题答案: 这是java中泛型的怪癖。您必须像这样声明数组: 之后,您可以亲自创建每个地图,例如: 这是擦除的结果。该数组是的数组。通用类型参数不保留。您将收到关于此的警告,但是它将编译并可以通过注释禁止显示警告。

  • 我在Nuxt中创建了一个表单。我正试着把它提交给一个外部API。预期的响应是JWT令牌。 尝试直接调用API会导致CORS错误,因此我在nuxt.confix.js中使用代理设置。 现在,当我检查网络选项卡时,它显示了301重定向,但在post请求中发送的数据被丢弃,它向API发出get请求,返回405错误(因为它期待带有数据的POST请求而不是空GET请求)。 如何使用 NUXT 向外部 API

  • 我正在尝试构建一个简单的组件,它将进行一次API调用,2秒钟后将重定向到另一个页面。为此,我尝试使用react router dom中的重定向组件,但导入失败 我得到一个错误:“react router dom没有导出的成员‘重定向’。” 版本"react-router-dom":"^6.0.0-beta.0",

  • 问题内容: 我有一个网页。该网页将用户重定向到另一个网页,或多或少通过以下方式: 好吧,您知道,我要做的是将GET参数转换为POST参数。不要告诉我这很糟糕,我知道我自己,这也不是我真正要做的,重要的是我从数组中收集数据,然后尝试通过POST将其提交到另一个页面。但是,如果用户关闭了JavaScript,它将无法正常工作。我需要知道的是:是否可以通过PHP传递POST参数,以便重定向也可以通过PH