Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从邮递员处获取重定向的URL_Javascript_Postman_Url Redirection_Postman Pre Request Script_Postman Testcase - Fatal编程技术网

Javascript 从邮递员处获取重定向的URL

Javascript 从邮递员处获取重定向的URL,javascript,postman,url-redirection,postman-pre-request-script,postman-testcase,Javascript,Postman,Url Redirection,Postman Pre Request Script,Postman Testcase,我目前正在将我的旧网站迁移到新网站,我刚刚创建了一些url重定向规则,将旧链接重定向到新网站上的页面 为了测试这些重定向规则,我使用了Postman,但是我找不到任何方法从Postman的邮箱获取重定向的urlREDIRECTED_URL是经过重定向规则处理后的URL 以下是我目前的测试: var root_url = postman.getEnvironmentVariable('root_url'); var oldurl = root_url + postman.getEnvironmen

我目前正在将我的旧网站迁移到新网站,我刚刚创建了一些url重定向规则,将旧链接重定向到新网站上的页面

为了测试这些重定向规则,我使用了Postman,但是我找不到任何方法从Postman的邮箱获取重定向的url
REDIRECTED_URL
是经过重定向规则处理后的URL

以下是我目前的测试:

var root_url = postman.getEnvironmentVariable('root_url');
var oldurl = root_url + postman.getEnvironmentVariable('old_page');
var newurl = root_url + postman.getEnvironmentVariable('new_page');

if (REDIRECTED_URL == newurl)
{
    tests[oldurl + " redirected"] = true;
}
else
{
    tests[oldurl + " failed to redirect"] = false;
}
有没有办法在postman中测试这一点,或者我应该使用另一个应用程序

  • 关闭“邮递员”中的设置“自动跟随重定向”
  • 请求
    example.com/test page/test01
  • 在测试选项卡中,检查https状态代码和re direct标头是否正确:

  • 我不确定你的具体问题,但你得到了什么状态码(或者因为是你的网站而返回)?我将返回状态代码200s和404s,因为还没有生成所有页面。我将像
    example.com/test page/test01
    这样的页面重定向到
    example.com/tests/test01
    ,因此无论页面是否存在,我都要检查url是否正确重定向,重定向时是状态代码302?你能在另一个重定向的网站上试试吗?@Maayao在chrome中调试并保存日志时,我得到了状态代码301(永久重定向),但在postman中它只显示了状态代码200perfect!非常感谢你。“自动跟踪重定向”设置处于“打开”状态是导致问题的原因
    pm.test("Status Code is 301", function () {
        pm.response.to.have.status(301);
    });
    
    pm.test("Location-header exists", function () {
        pm.expect(postman.getResponseHeader("Location")).to.eq("example.com/tests/test01");
    });