登录
首页 >  Golang >  Go问答

如何在golang中测试http.Redirect目标URL

来源:stackoverflow

时间:2024-04-22 13:39:34 373浏览 收藏

哈喽!大家好,很高兴又见面了,我是golang学习网的一名作者,今天由我给大家带来一篇《如何在golang中测试http.Redirect目标URL》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!

问题内容

我已经在 go 处理程序中设置了 http 重定向,并且正在尝试验证目标 url 是否按预期组成。 我目前正在使用 httptest 进行相关单元测试。

在处理程序中:

url := fmt.sprintf("%s%s?token=%s", domain, someurl, token)
http.redirect(w, r, url, 302)

当前单元测试只能验证响应代码,不能验证目标url:

resp := httptest.newrecorder()
router.servehttp(resp, req)
assert.equal(t, 302, resp.code)

我期待类似的事情

assert.Equal(t, expectedURL, resp.redirectURL)

解决方案


断言 Location 标头符合预期:

assert.Equal(t, expectedURL, resp.Result().Header.Get("Location"))

https://go.dev/play/p/iaUMkBneNUI

终于介绍完啦!小伙伴们,这篇关于《如何在golang中测试http.Redirect目标URL》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>