使用 GOT http sindresorhus 将methodRewriting 设置为false 删除主体身份验证

问题描述

我使用 GOT 进行 http 请求

我想在特定 URL 上发送 post 请求,有时需要先重定向以验证 302,然后再次返回到第一个 URL 并发布。

我的问题是在我将 methodrewriting 设置为 false 后,它会验证并重定向回第一个链接并尝试发布,但它不会发布任何内容,因为 methodRewrite 删除内容长度的标头和正文。即使我尝试在钩子重定向中再次添加正文(返回到第一个 URL),它仍然没有发布任何内容

代码

let step1Options =
        {
            method: "POST",url: "/test/bls/bn.aspx",parameters: options.parameters,headers: {
                cookie: options.headers.cookie,"User-Agent": " Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) "
            },jar: true,methodrewriting: false,timeout: 20000,retry: {
                limit: 23,methods : ["POST","GET"] 
            },allowGetBody: true,followRedirect: true,successCode: 200,formData: {
                __test: options.stepBody.__test,__testVal: options.stepBody.__testVal,btnS: "a",__testbbb: "11111",fuJoinedFile: fs.createReadStream(options.fileName)
            },hooks: {
                beforeRedirect: [
                    (optionss,responsee) => {
   
                        if (optionss.url["href"] == "lastUrlForPosting")
                        { console.log("****WRONG method in (change GETpost/ FIXING******")

                        optionss.method = "POST"
                        optionss.formData=  {
                               __test: options.stepBody.__test,fuJoinedFile: fs.createReadStream(options.fileName)
                         }
                 }
        }
清单

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)