如何在邮递员和javascript中更改主机?

How to change host in postman and javascript?

提问人:lolo xoxo 提问时间:10/17/2023 更新时间:10/20/2023 访问量:132

问:

我想为前端团队和测试团队找到一个简单的解决方案,以便当他们在本地工作时,他们可以覆盖主机标头以匹配 {tenant}.mydomain.com。你知道我怎样才能做到这一点吗? 以下是我用于检查主机的 .net 7 代码

var host = Request.Host.Value;
        if (string.IsNullOrEmpty(host))
        {
            return BadRequest("Missing host header.");
        }

我读到该文件可以使用,但不灵活,并且每当您想要测试另一个租户时都需要更改hosts

javascript c# asp.net-core 邮递员

评论

0赞 pcalkins 10/18/2023
此时,您已经知道主机。运行上述代码的是主机。你想要的是一个暂存服务器......您可以对测试代码进行分支,以根据您是测试暂存站点还是实时站点来更改请求。(只需使用 baseURL var)

答:

0赞 Qiang Fu 10/17/2023 #1

据说邮递员使用系统DNS。https://github.com/postmanlabs/postman-app-support/issues/3177
也许你需要这个。
https://hostsfileeditor.com/
或电动玩具
https://learn.microsoft.com/en-us/windows/powertoys/hosts-file-editor#filtering-host-file-entries

0赞 mikee 10/20/2023 #2

在 Postman 中,这就是环境的用途。

为每个主机标头创建单独的环境。

每个环境都需要包含一个具有实际主机标头的变量。

我假设我们正在谈论此处描述的主机标头。

什么是 HTTP“主机”标头?

这意味着添加一个名为 host 的标头。(而不是更改 URL)。

有关在 Postman 中添加标题的说明,请参阅此处。

https://learning.postman.com/docs/sending-requests/requests/#configuring-request-headers

不要对值进行硬编码,而是使用环境变量。例如,{{hostHeader}}。

测试人员需要做的就是更改环境以匹配他们想要使用的主机标头。

如果您实际上在谈论更改 URL 中的主机,那么这是相同的原理。使用环境,然后为请求中使用的 {{baseURL}} 设置一个变量。